Android PopWindow的简单应用

1、由按钮触发的,显示在屏幕某一小部分的popWindow

View popupView = LayoutInflater.from(v.getContext()).inflate(R.layout.popchild, null);//设置popWindow的布局
				  window =new PopupWindow(
						  popupView,//布局
						  LayoutParams.MATCH_PARENT,//横向满屏
						  LayoutParams.WRAP_CONTENT//纵向包裹
						  ); 

			      window.setFocusable(true);
			      window.setOutsideTouchable(true);
			      window.setBackgroundDrawable(new BitmapDrawable());
	                      window.showAsDropDown(l3);//显示出来,里面的参数是触发的view,用于规定其大体的位置

2、从侧面划出的popWindow,有点像抽屉效果,但比抽屉效果好

  window =new PopupWindow(
							  popupView,//布局
							  700,//宽度
							  LayoutParams.MATCH_PARENT,//高度
							  true //可成为焦点
							  ); 

				      window.setFocusable(true);
				      window.setOutsideTouchable(true);
				      window.setBackgroundDrawable(new BitmapDrawable());
				      
				      listview1=(ListView) popupView.findViewById(R.id.listView1);//可以从popView里
				     
				      
				      try {
						if(resultList!=null&&resultList.size()>0)
						  window.showAtLocation(
								  listview1, //唤醒view,是popView里面的view
								  Gravity.RIGHT,//靠右边出来
								  0,//x偏移
								  0//y偏移
								  );

3、仿弹出对话框的效果

 View popupView = LayoutInflater.from(v.getContext()).inflate(R.layout.comment, null);		  
					  window =new PopupWindow(
							  popupView,//布局
							  LayoutParams.MATCH_PARENT,//横向满屏,但是注意,如果这里不满屏,布局里面写满屏,出来以后不是满屏,所以必须在这里写满屏
							  LayoutParams.WRAP_CONTENT,//纵向包裹
							  true 
							  ); 
				      window.setFocusable(true);
				      window.setOutsideTouchable(true);
				      window.setBackgroundDrawable(new BitmapDrawable());
					  window.showAtLocation(
							  v, //大概位置
							  Gravity.TOP,//居顶
							  0,//横向偏移
							  360//纵向的偏移,偏移到大约中间位置即可
							  );



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值