Android的edittext键返回到下一个文本

我有一系列的EditText条目,并希望如此,当用户点击回车键时,它将转到下一个Editext。 我知道如何一次一个这样做,但有没有办法告诉所有的edittext控件使用相同的函数来检查键入和提前游标。 每个EditText有一个函数似乎有点疯狂

比嗅探键简单得多:尝试设置android:singleLine="true"android:imeOptions="actionNext" (至less对于单行条目textviews)。 阅读更多关于TextView的Android 文档 。

更新: singleLine现在已经被弃用了,但你可以放弃它。 只要不显式设置android:inputType="textMultiLine"inputType可以编辑文本的默认行为,而inputType覆盖build议的singleLine替代maxLines="1"的可编辑文本。

对于从Yoni给出的答案替代或更新的方法…

由于singleLine已被弃用 ,我们可以使用android:inputType="text"手动设置为android:maxLines="1" android:inputType="text"

小解释:

  • 我们使用android:inputType="text"作为纯文本input。
  • 我们使用android:maxLines="1"来设置文本的最大行数为1(如其所示)。

单独使用maxLines="1"不会产生任何效果,但是,单独使用inputType="text"也可以起作用,就像Adam所说的那样(尽pipe我没有检查过)。

您可以尝试向所有editText对象添加单个事件侦听器:

 OnKeyListener myKeyListener = new OnKeyListener() { @Override public boolean onKey(View arg0, int arg1, KeyEvent arg2) { // TODO: do what you got to do return false; } }; editText1.setOnKeyListener(myKeyListener); editText2.setOnKeyListener(myKeyListener); editText3.setOnKeyListener(myKeyListener); 

添加

  android:inputType="text" 

在XML中就够了。 当你没有定义inputtypes时,则转到下一行。

在styles.xml中应用此自定义样式

 <style name="SingleLineText"> <item name="android:inputType">text</item> <item name="android:maxLines">1</item> </style> 

然后像这样在EditText中设置它

  style="@style/SingleLineText"