需求这里不再赘述,就是一个popupwindow,出来之后里面的视图要分情况控制。
一开始,代码就是这么写的:
final View view = inflate(R.layout.popupwindow_menu_home);
if (menuPop == null) {
menuPop = new PopupWindow(view,
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT, true);
menuPop.setOutsideTouchable(true);
menuPop.setAnimationStyle(R.style.menuAnimation);
menuPop.setBackgroundDrawable(new BitmapDrawable());
menuPop.setOnDismissListener(new PopupWindow.OnDismissListener() {
@Override
public void onDismiss() {
}
});
}
if (!menuPop.isShowing()) {
menuPop.showAsDropDown(v,v.getWidth(),-(7*v.getHeight())/4);
}
各种判断,这也算是常见的了,一般都会这么写吧。但是问题就出在这里。
第一次出现时,view与popupwindow都会初始化,这时候去控制view里面的控件,没有任何问题,但是点击屏幕popupwindow消失,第二次出现时,vie