编辑回收器视图中的文本.如何通过键盘将下一个编辑框聚焦在下一行?



我正面临这种情况。我有一个卡片视图的回收器视图。在每一行中,我只有一个文本视图和一个编辑文本。 我想 : *专注于第一行的第一个编辑文本,按下出现的软键上的"下一步"按钮,焦点将在下一行的相同编辑文本中。 这可能吗?

我知道android:nextFocusForward="@+id/..",但我没有id(因为当然,当前的编辑文本也是如此(。

我希望我很清楚,你可以帮助我解决这个问题。

为了清楚起见,这是我在卡片视图中的编辑文本:

<EditText
android:id="@+id/prezzo_inserireprezzo"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/nomeprodotto_inserimentoprezzo"
android:layout_alignParentEnd="true"
android:layout_marginEnd="15dp"
android:ems="10"
android:inputType="numberDecimal"
android:maxLines="1"
android:text="56.13"
/>

如果您以编程方式构建 CardView,那么您将不得不循环浏览所有视图(昂贵(或保留对您创建的每个编辑文本的引用,以便您可以请求将重点放在您确定的下一个文本上。 除非整个布局都是硬编码的,否则无法在 xml 中执行此操作。

您可以保留对数组列表中创建的每个编辑文本的引用。

List<EditText> myEditTexts = new ArrayList<EditText>();

您可以参考这篇文章以获取有关处理返回事件的更多信息 Android - 在编辑文本中处理"输入">

最新更新