我的平板电脑用户的软键盘上有一个标签键.我正在使用表视图,并在一行中有3个EditText字段,当前行下面有EditText字段.
当用户点击标签时,它会将它们带到下面的下一个字段,而不是右边的下一个字段.
布局中是否有一种方法可以设置Tab键顺序,还是仅以编程方式完成?
如果它只能用Java完成,它究竟是如何完成的?
感谢NextFocusRight的提示,但它似乎没有工作(或者我做错了)
这是我使用的代码.我必须添加imeoptions以使"下一个"按钮显示在我的模拟器中.你觉得我这样做有什么不对吗?
<EditText
android:id="@+id/bikeHHT"
android:layout_width="50dip"
android:layout_height="40dip"
android:textSize="14px"
android:maxLength="2"
android:nextFocusLeft="@+id/bikeMMT"
android:imeOptions="actionNext"
android:layout_column="1"/>
<EditText
android:id="@+id/bikeMMT"
android:layout_width="50dip"
android:layout_height="40dip"
android:textSize="14px"
android:nextFocusRight="@+id/bikeSST"
android:imeOptions="actionNext"
android:maxLength="2"/>
Run Code Online (Sandbox Code Playgroud)
Eri*_*rch 92
替换android:nextFocusLeft为android:nextFocusDown."下一个"软键或TAB键正在寻找下一个"向下"焦点,而不是向左或向右.
And*_*zie 38
我还注意到你的参考:
android:nextFocusRight="@+id/bikeSST"
Run Code Online (Sandbox Code Playgroud)
如果尚未定义该id,则需要"+"字符,如果您引用的元素可能在.xml文件中较低.
否则,如果它已经在上面定义(或包含),那么你可以省略"+"字符:
android:nextFocusRight="@id/bikeSST"
Run Code Online (Sandbox Code Playgroud)
不使用的优点的"+"时,你会引用应该已经存在的ID,是IDE和绒毛检查可以检测出错误的情况:那你指的其实也一个ID 不存在.
如果包含"+",那么如果不存在则创建它并且无法执行此检查.
Ala*_*ier 10
你检查android:imeOptions="actionNext"了EditText的属性吗?
它用虚拟键盘中的"下一步"替换回车键的名称,然后单击它 - 焦点跳转到下一个字段.
在你的布局中,你会做这样的事情
<EditText
...
android:text="Field 1"
android:imeOptions="actionNext" />
<EditText
...
android:text="Field 2"
android:imeOptions="actionNext" />
Run Code Online (Sandbox Code Playgroud)
而在Java中
TextView field2 = (TextView) field1.focusSearch(View.FOCUS_RIGHT);
field2.requestFocus();
Run Code Online (Sandbox Code Playgroud)
您可以决定下一个请求关注的字段.
对我来说android:nextFocusUp,android:nextFocusRight,android:nextFocusDown和android:nextFocusLeft没有工作,但android:nextFocusForward没有工作.
请参阅支持键盘导航,处理选项卡导航.
| 归档时间: |
|
| 查看次数: |
46227 次 |
| 最近记录: |