我有一个谷歌电视的自定义布局,为了让布局正常工作,我在我的活动中覆盖了 dispatchkeyEvent 以让我的布局与 dpad 一起工作。我的布局也使用了gridview,并且由于我覆盖了dispatchKeyEvent,所以我不能将dpad与gridview一起使用。无论如何将关键事件传递给gridview以便我可以使用它?
Edit1:显然,gridview 无法根据 .isFocusable() 进行聚焦。反正有没有强迫它变得可聚焦?
Edit2:我认为问题在于 VideoView 正在从所有控件中获取焦点?这是我正在使用的布局。如果我取出 VideoView,我可以使用控件。UI 和 Workspace 布局是我在视频上的 UI 覆盖。有办法解决这个问题吗?
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_weight="1" >
<VideoView
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<RelativeLayout
android:id="@+id/ui"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom" >
<LinearLayout
android:id="@+id/workspace"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom" >
</LinearLayout>
</RelativeLayout>
</FrameLayout>