我正在使用自定义键盘,我有一个问题。 关键 监听器我需要将当前的光标位置设置为下一行。我有 尝试使用
editText.setSelection(editText.getText().length());
将当前光标位置设置为文本结尾而不是下一个 线。
答案 0 :(得分:3)
怎么样:
editText.append("\n");
然后将光标设置到结尾?
答案 1 :(得分:1)
我不太清楚是否需要插入新行,因为输入键在例如输入键中产生了它。记事本。 在那种情况下,uval的答案看起来很好,除了你可能想要在插入之前记住光标的当前位置:
int position = editText.getSelectionStart();
editText.getText().insert(position, "\n");
editText.setSelection(position + 1);
否则,如果您只想在文本中跳转,就像在记事本中使用箭头键那样,您可能需要计算给定宽度的每行的字符数。查看其文本的大小,然后相应地得到以下行的数量和位置。
答案 2 :(得分:0)
使用
<EditText
android:id="@+id/fnameUser"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="5dp"
android:background="@drawable/text_bar"
android:hint="First Name"
**android:text="@string/newline"**
android:textColor="#ffffff"
android:padding="5dp" />
其中
<string name="newline">\n</string>