我正在使用以下布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"
android:orientation="vertical" >
<DatePicker
android:id="@+id/datePicker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp"
android:nextFocusRight="@+id/timePicker"
android:nextFocusDown="@+id/timePicker" />
<TimePicker
android:id="@+id/timePicker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/datePicker"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp"
android:nextFocusLeft="@+id/datePicker"
android:nextFocusUp="@+id/datePicker" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/timePicker"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="0dp"
android:layout_marginTop="2dp"
android:text="@string/button1" />
</RelativeLayout>
我试图与
android:nextFocusRight="@+id/timePicker"
android:nextFocusDown="@+id/timePicker"
但这是行不通的。当我从DatePicker启动并单击“下一步”时,我得到了错误的视图,并且键盘布局正常。
有人可以帮忙吗?
最佳答案
我相信您要做的就是将以下内容添加到所有要关注的视图中:
android:focusable="true"
根据Documentation:
焦点处理
该框架将处理常规焦点移动以响应用户
输入。这包括在删除视图时更改焦点或
隐藏或新视图可用时。意见表明他们
愿意通过isFocusable()方法关注焦点。
isFocusable()
返回此View是否能够获得焦点。
相关的XML属性
android:focusable
退货
如果此视图可以引起关注,则为true,否则为false。