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
     

  • 相关阅读:
    Android之TabHost使用(引用SDK例子文档)
    Android之在线词典
    校验插入指定结点是否导致编码循环的示例函数
    查表法按日期生成流水号的示例.sql
    备份数据库并提供下载的asp文件
    Metro风格XAML应用程序性能技巧
    导入文本文件时如何指定字段类型.sql
    宝塔形数据的处理.sql
    将某个目录上的Excel表,导入到数据库中.sql
    Using SqlDataReader’s new async methods in .Net 4.5 Beta
  • 原文地址:https://www.cnblogs.com/tt_mc/p/2362777.html
Copyright © 2011-2022 走看看