
我想为我的应用程序添加一个自定义视图.为此,我使用WindowsManager:
final WindowManager wm = getwindowManager(); final VIEw vIEw = ((LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.game_menu, null); WindowManager.LayoutParams lp = new WindowManager.LayoutParams(); lp.flags |= WindowManager.LayoutParams.FLAG_DIM_BEHIND | WindowManager.LayoutParams.FLAG_FulLSCREEN; lp.dimAmount = (float) 0.6; lp.format = PixelFormat.transparent; lp.windowAnimations = androID.R.style.Animation_Dialog; vIEw.setonKeyListener(new OnKeyListener() { @OverrIDe public boolean onKey(VIEw v, int keyCode, KeyEvent event) { Log.d("12", "12"); if (keyCode == KeyEvent.KEYCODE_BACK) { wm.removeVIEw(vIEw); // This I need to hIDe my menu } return false; } }); wm.addVIEw(vIEw, lp); // I add menu like in angry Birds and other games但是我无法捕获用于隐藏此视图的设备按键事件.
为什么在windowsManager添加的视图中未调用我的密钥侦听器?如何通过按下设备后退键隐藏我的视图?
解决方法:
您可以添加这些setFocusableIntouchMode(true);在你看来
总结以上是内存溢出为你收集整理的android-如何捕获由WindowManager添加的视图中的按键全部内容,希望文章能够帮你解决android-如何捕获由WindowManager添加的视图中的按键所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)