由于可访问性原因,我的应用程序支持键盘输入。用户可以通过键盘使用选项卡在可点击项或输入字段之间切换。但是,我也试图在android工具栏中切换图标,但到目前为止还算不上运气。
理想情况下,一旦用户再次单击选项卡一次到达底部的最后一项,则应再次移至应用程序工具栏中的第一项,并再次单击选项卡,则应移至工具栏的第二项等等等等。
任何建议将不胜感激。
答案 0 :(得分:0)
我遇到了同样的问题,我可以通过对布局感兴趣的每个视图使用属性来修复它:
android:focusable="true"
android:nextFocusDown="@id/yourDownViewId"
android:nextFocusLeft="@id/yourLeftViewId"
android:nextFocusRight="@id/yourRightViewId"
android:nextFocusUp="@id/yourUpViewId"
此外,为了使整个导航正常工作,我必须使用tab
和arrows keys
。
让我知道这是否有帮助。
在我的情况下,我的视图处于垂直模式(如列表),并且我的nextFocusRight
和nextFocusDown
是相同的波纹管视图,而我的nextFocusLeft
和nextFocusUp
是相同的视图在视图上方。
答案 1 :(得分:0)
我知道,我来不及回答您的问题,但这可以帮助其他人。请参阅此Link
android:nextFocusForward
是消耗Tab键事件的属性
<Button
android:id="@+id/button1"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:nextFocusForward="@+id/editText1"
... />
<Button
android:id="@+id/button2"
android:layout_below="@id/button1"
android:nextFocusForward="@+id/button1"
... />
<EditText
android:id="@id/editText1"
android:layout_alignBottom="@+id/button2"
android:layout_toLeftOf="@id/button2"
android:nextFocusForward="@+id/button2"
... />