安卓:"next"点击表单以错误的视图结束



我使用以下布局:

<?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"

但这行不通。当我在日期选取器中启动并单击下一步时,我得到一个错误的视图,使用正常的键布局。

有人可以帮忙吗?

我相信

您需要做的就是将以下内容添加到您想要关注的所有视图中:

android:focusable="true"

每个文档:

对焦处理

该框架将处理响应用户的常规焦点移动 输入。这包括在视图被删除时更改焦点或 隐藏,或当新视图可用时。视图表明其 愿意通过 isFocusable() 方法集中注意力


isFocusable()

返回此视图是否能够获得焦点。

相关 XML 属性
安卓:可聚焦

返回
如果此视图可以获取焦点,则为 true,否则为 false。

根据我对 Android 的有限经验,获得错误的视图意味着编译的.class文件中使用的资源值与生成的 R 文件不同步。尝试清理项目并从头开始重新生成。

如果这没有帮助,请在您的应用中发布相关活动的代码。

最新更新