1.默认情况
系统会按照布局从上到下,从左到右的传递focus
2.自定义focus传递
通过以下属性设置:
<Button
style="@style/clockFaceNum"
android:text="12"
android:id="@+id/button12"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:nextFocusUp="@+id/button11"
android:nextFocusLeft="@+id/button11"
android:nextFocusRight="@+id/button1"
android:nextFocusDown="@+id/button1">
<requestFocus />
</Button>
requestFocus设置初始Focus为button12.
1.如何取得focus状态?
mFocusFinder = FocusFinder.getInstance();
mFocusFinder.findNextFocus(mRoot, v, View.FOCUS_FORWARD);
2.如何设置当前获得focus的控件?
代码中:button12.requestFocus();
布局文件中:<Button><requestFocus /> </Button>
3.作为开发者,一定要记住由于Android设备的多样性,用户如何在界面上方便地进行输入或在不同的控件中来回切换是十分重要的,用户如何自定义控件的焦点切换顺序,这对于用户界面的体验是很有好处的。