自定义Dialog_位置 坐标

	  private void getWindowSize(){
		  handler.post(runnable);
	  }
      Handler handler=new Handler();
      Runnable runnable=new Runnable(){

		@Override
		public void run() {
			
			WindowManager mWm = (WindowManager)getSystemService(Context.WINDOW_SERVICE); 
			Dialog dialog = new Dialog(MainActivity.this); 
			dialog.setTitle("window manager test!");
			dialog.show();
			//必须写在show()后 写在show()前无效
			dialog.setCanceledOnTouchOutside(true);//设置dialog以外能获得焦点
			
//			WindowManager win=getWindowManager();//获取屏幕大小
//			Display display=win.getDefaultDisplay();
//			int width=display.getWidth();
//			int height=display.getHeight();
			//获取屏幕大小 上面那种已过时
               DisplayMetrics dm = new DisplayMetrics();
               getWindowManager().getDefaultDisplay().getMetrics(dm);
               int width=dm.widthPixels;
               int height=dm.heightPixels;
                			
			Window dialogView=dialog.getWindow();//获取dialog的window
			WindowManager.LayoutParams lp=dialogView.getAttributes();
			lp.width=(int) (width*0.8);//对话框宽高
			lp.height=(int)(height*0.2);
			lp.x=-200;//坐标(x,y)=(0,0) 不在左上角 而是在中间!!
			lp.y=-100;
			dialogView.setAttributes(lp);			
		}

		private void setCanceledOnTouchOutside(boolean b) {
			// TODO Auto-generated method stub
			
		}
    	  
      };
   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值