2013-06-17 3 views
0

Я работаю над пользовательской клавиатурой, где у меня есть одна проблема. Ключ слушатель Мне нужно установить текущее положение курсора на следующую строку. Я попытался с помощью Edittext установить курсор на следующую строку

editText.setSelection(editText.getText().length()); 

, который устанавливает текущую позицию курсора в конец текста не к следующей линии.

+0

следующей редакции или следующей редакции? – auval

+0

@uval следующая строка ... – Aniket

ответ

3

Как насчет:

editText.append("\n"); 

И чем установить курсор в конец?

+0

Спасибо, что вы работаете ... – Aniket

+0

у меня есть еще одна проблема .. – Aniket

+0

что это? (вы также можете открыть новый вопрос по той же цене) – auval

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> 
0

Это не совсем ясно для меня, желательно ли вставка новой линии как ввести ключ производит его, например, блокнот. В ответ тот случай Юваль кажется хорошо, кроме того, вы можете вспомнить текущую позицию курсора перед вставкой:

int position = editText.getSelectionStart(); 
editText.getText().insert(position, "\n"); 
editText.setSelection(position + 1); 


В противном случае, если вы просто хотите, чтобы прыгать в тексте, как вы можете сделать с помощью клавиш со стрелками в блокноте вам, вероятно, придется рассчитать количество символов в строке по заданной ширине вашего вида и размер его текста, а затем получить соответственно номер и позицию следующей строки.

Смежные вопросы