Android onKeyDown不是';t调用

Android onKeyDown不是';t调用,android,onkeydown,Android,Onkeydown,我正在将rootView传递给setContentView: root = (FlyOutMenu) this.getLayoutInflater().inflate(R.layout.activity_myLayout, null); setContentView(root); 布局的定义如下: <com.android.xyz.view.viewgroup.FlyOutMenu.FlyOutMenu xmlns:android="http://schemas.android.

我正在将rootView传递给setContentView:

root = (FlyOutMenu) this.getLayoutInflater().inflate(R.layout.activity_myLayout, null);
    setContentView(root);
布局的定义如下:

<com.android.xyz.view.viewgroup.FlyOutMenu.FlyOutMenu
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<RelativeLayout 
            android:id="@+id/RelativeLayoutMain"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

                <TextView
                    android:id="@+id/dialog_label_topic" />

                <EditText
                    android:id="@+id/dialog_searchbar_topic"
                    android:ems="10" >
                </EditText>

                <Button
                    android:id="@+id/dialog_menu_topic" />


                <GridView
                android:id="@+id/gv1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/dialog_searchbar_topic"
                android:layout_alignParentBottom="true" >
            </GridView>
    </RelativeLayout>
我没有附加任何onFocus侦听器。唯一请求焦点的视图是我活动中的搜索栏,但它也没有焦点侦听器

我尝试了以下内容:

没有结果。。。问题依然存在

感谢您的帮助

有人知道为什么不能调用它吗


提前感谢

希望这个答案对你的问题来说还不算太晚;)

我在自己的自定义视图实现中遇到了同样的问题,我发现
onKeyUp(int-keyCode,KeyEvent事件)
是在
视图上调用的键盘处理事件

但是
ViewGroup
从不调用
onKeyUp
,而是调用自己的方法
dispatchKeyEvent(KeyEvent事件)
,这是您需要在自定义
ViewGroup
实现中覆盖的方法


如果有人遇到这个问题,希望这能有所帮助。

希望这个答案对你的问题来说还不算太晚;)

我在自己的自定义视图实现中遇到了同样的问题,我发现
onKeyUp(int-keyCode,KeyEvent事件)
是在
视图上调用的键盘处理事件

但是
ViewGroup
从不调用
onKeyUp
,而是调用自己的方法
dispatchKeyEvent(KeyEvent事件)
,这是您需要在自定义
ViewGroup
实现中覆盖的方法


如果有人遇到这个问题,希望这能有所帮助。

希望这个答案对你的问题来说还不算太晚;)

我在自己的自定义视图实现中遇到了同样的问题,我发现
onKeyUp(int-keyCode,KeyEvent事件)
是在
视图上调用的键盘处理事件

但是
ViewGroup
从不调用
onKeyUp
,而是调用自己的方法
dispatchKeyEvent(KeyEvent事件)
,这是您需要在自定义
ViewGroup
实现中覆盖的方法


如果有人遇到这个问题,希望这能有所帮助。

希望这个答案对你的问题来说还不算太晚;)

我在自己的自定义视图实现中遇到了同样的问题,我发现
onKeyUp(int-keyCode,KeyEvent事件)
是在
视图上调用的键盘处理事件

但是
ViewGroup
从不调用
onKeyUp
,而是调用自己的方法
dispatchKeyEvent(KeyEvent事件)
,这是您需要在自定义
ViewGroup
实现中覆盖的方法

希望这对其他人遇到这个问题有所帮助

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    // TODO Auto-generated method stub
    Log.e("onKeyUp","Fired");
    if(keyCode == KeyEvent.KEYCODE_BACK) {
        Log.e("fired with KeyEvent","true");
        RelativeLayout.LayoutParams myLayoutParams = (android.widget.RelativeLayout.LayoutParams) gv.getLayoutParams();
        myLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
        gv.setLayoutParams(myLayoutParams);
    }
    return super.onKeyUp(keyCode, event);
}