这篇文章主要是简单介绍安卓popwindow的使用,和需要注意的地方。有些参考别人的已经找不到来源啦
private void showRoomPicPw(){
// 自定义布局
View inflateView = LayoutInflater.from(this)
.inflate(R.layout.pop_simplelist, null);
//初始化popwindow
final PopupWindow popupWindow = new PopupWindow(inflateView,
LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
//键盘弹出,不遮挡窗口
popupWindow.setInputMethodMode(PopupWindow.INPUT_METHOD_NEEDED);
popupWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
//很神奇的一个事情,如果不设置背景,popwindow的无法关闭,而且点击返回键直接关闭activity。
参考了很多人的博客,都是这样说的
popupWindow.setFocusable(true);
backgroundAlpha(0.7f);
ColorDrawable colorDrawable = new ColorDrawable(0xffffffff); popupWindow.setBackgroundDrawable(colorDrawable);
// 设置popWindow的显示和消失动画
popupWindow.setAnimationStyle(R.style.mypopwindow_anim_style);
// 设置要在show方法之前完成
// popupWindow.showAsDropDown(view);
popupWindow.showAtLocation(addDeviceBtn,Gravity.BOTTOM,0,0);
//重写关闭事件
class DismissListener implements PopupWindow.OnDismissListener {
@Override
public void onDismiss() {
backgroundAlpha(1f);
}
}
//添加pop窗口关闭事件
popupWindow.setOnDismissListener(new DismissListener());
}