zoukankan      html  css  js  c++  java
  • popupWindow设置了setTouchable(true);setFocusable(true)时,如何捕获到menu键?

    设置了焦点,那么这个弹出窗体是当前操作的窗口,如果想要后面的Activity响应按键,需要在popupwindow上注册键盘事件,然后去调用Activity的组件来响应相应的事件。但是
    popupWindow好像只有一个onDisMiss的监听,怎么来注册键盘事件监听啊?
    可以利用setOnKeyListener对popupwindow的某个view设置监听,捕捉键盘事件就可以了吧
    popupwindow里面有个View,用这个view添加键盘事件
    给最外层的view设下setOnKeyListener就可以了

    例如
            menuView.setBackgroundDrawable(new BitmapDrawable());
                    menuView.setFocusable(true);
                    menuView.setFocusableInTouchMode(true);
                    menuView.setOnKeyListener(new OnKeyListener()
                    {

                            @Override
                            public boolean onKey(View v, int keyCode, KeyEvent event)
                            {
                                    // TODO Auto-generated method stub
                                    if (event.getAction() == KeyEvent.KEYCODE_MENU)
                                    {
                                            Log.v("keyCode", "/" + keyCode);
                                            popupBack.dismiss();
                                            popupWindow.dismiss();
                                            return false;

                                    }

                                    return false;
                            }
                    });
     

     参考这个例子,里面可以添加如上的方法实现点击MENU键关闭菜单的功能。

    http://blog.csdn.net/kkfdsa132/article/details/6403404
     

  • 相关阅读:
    ThingJS之聚光灯,js开发+控制面板轻松搭
    ThingJS不到50行代码就轻松开发拾取功能
    ThingJS:3D交互技术简化第一人称行走模式
    ThingJS:3D地图开发组件更新啦!
    ThingJS教你怎么用拖拽的方式变身热力图
    天空盒结合ThingJS开发平台,会碰撞出什么火花呢
    ThingJS中支持引用css样式并使用js语法开发
    ThingJS基于CMAP组件融合高德地图web API
    ThingJS:让可视化技术成为高效城市管理的好帮手
    SpringBoot整合Filter
  • 原文地址:https://www.cnblogs.com/tt_mc/p/2362777.html
Copyright © 2011-2022 走看看