在pop windows中 要设定大小,这个大小 数值是 像素值,不是dp。
由于不能设定 wracontent 来设定,所以这个数值也没有办法用讨巧的办法了。
一个折中的办法:在 资源 demins.xml 定义好长度,然后在具体pop winddow中使用。在java代码中生成pop window时 输出的大小,就是
View newView = LayoutInflater.from(mContext).inflate(R.layout.pop_window_staff_group_select, null);
int viewW = getResources().getDimensionPixelSize(R.dimen.pop_win_staff_group_width);
int viewH = getResources().getDimensionPixelSize(R.dimen.pop_win_staff_group_height);
mPopupWindow = new PopupWindow(newView,viewW,viewH);
demins.xml 中的数值:
<dimen name="pop_win_staff_group_height">300dp</dimen>
<dimen name="pop_win_staff_group_width">200dp</dimen>
用dp的好处,就是在不同分辨率的机子中展现一样的效果。 int viewW 和int viewH会根据不同的分辨率计算出像素值。这个细节就不用自己管了,getDimensionPixelSize会自动计算。