一个弹出窗口,可以用来显示一个任意视图
弹窗是一个浮动的容器,出现在当前活动页的顶端
二、知识点概述:
所用到的类:PopupWindow
让窗体显示出来(显示的位置)调用的方法是showAtLocation
让浮窗隐藏调用的方法是dismiss( );
三、案例:
让浮窗显示在ListView的条目上
//给条目添加点击监听
lv.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
dismissPw();
contentView = View.inflate(AppManger_Activity.this,R.layout.app_manager_popupwindow,null);
pw = new PopupWindow(contentView,LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
pw.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
int[] location = new int[2];
//得到contentView在显示的位置
view.getLocationInWindow(location);
//指定显示在父控件的那个位置
pw.showAtLocation(parent, Gravity.LEFT+Gravity.TOP, 60,location[1] );
}
});
/**
* 将popupWindow关闭
*/
private void dismissPw() {
if(pw!=null&&pw.isShowing()){
pw.dismiss();
pw=null;
}
}