首页 > 代码库 > android Dialog坐标位置、布局文件、按键拦截
android Dialog坐标位置、布局文件、按键拦截
Dialog myDialog = new Dialog(this); // setContentView可以设置View也可以是布局文件 myDialog.setContentView(R.layout.test_akey); Window dialogWindow = myDialog.getWindow(); WindowManager.LayoutParams lp = dialogWindow.getAttributes(); dialogWindow.setGravity(Gravity.LEFT | Gravity.TOP); ////获取当前窗口 WindowManager mWindowManager=(WindowManager)getApplication().getSystemService(getApplication().WINDOW_SERVICE); lp.x = 200; // X坐标 lp.y = 200; // Y坐标(根据窗口大小,如,窗口高的一半mWindowManager.getDefaultDisplay().getHeight()/2) lp.width = WindowManager.LayoutParams.WRAP_CONTENT; // 宽度 lp.height = WindowManager.LayoutParams.WRAP_CONTENT; // 高度 lp.alpha = 0.8f; // 透明度 ////点击其他地方消失 myDialog.setCancelable(true); dialogWindow.setAttributes(lp); ////重写OnKeyListener,可以在此拦截按键 myDialog.setOnKeyListener(new OnKeyListener() { @Override public boolean onKey(DialogInterface myDialog, int keyCode, KeyEvent event) { if (keyCode==KeyEvent.KEYCODE_BACK ) { //拦截返回键 return true; } else return false; } }); /////获取dialog中的控件 Button mTest_Btn = (Button) myDialog.findViewById(R.id.test_btn); myDialog.show();//显示dialog myDialog.dismiss();//关闭dialog
android Dialog坐标位置、布局文件、按键拦截
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。