Intereting Posts
Не удалось запустить эмулятор в jenkins build Вкладка «Прокрутка» в приложении «Право налево» для Android Два датчика доступны для одного и того же типа в Android Не удается отладить собственный код c ++ для Android в Eclipse в Windows Не запрашивайте Window.FEATURE_ACTION_BAR и установите для windowActionBar значение false в вашей теме, чтобы вместо этого использовать панель инструментов Показывать push-уведомление только тогда, когда приложение не работает. IntelliJ IDEA 12 – У нового мастера приложений Android не удается найти «каталог ресурсов для модуля», Как эмулировать запоминающее устройство в эмуляторе Genymotion Платные и бесплатные версии приложения для Android Как передать целое число из одной активности в другую? Пустой макет – eglSurfaceAttrib не реализован PowerMock в Android-проекте Ошибка. Убедитесь, что курсор инициализирован правильно, прежде чем получать доступ к данным из него? Вызовите «Maven Project Builder» в Eclipse при запуске как -> Android-приложение (или вручную) Печатать массив без скобок и запятых

Редактирование текста Android AlertDialog

Есть ли способ создать многострочный EditText в AlertDialog в Android . Я установил setLines, и он показывает большой EditText для нескольких строк. Но когда я набираю текст, он не переходит к следующей строке и все еще печатает в одной строке . Вот мой код.

Builder builder = new AlertDialog.Builder(this); builder.setTitle("Comment"); final EditText input = new EditText(this); final String item_value = ItemList.get(position).get("comment"); input.setText(item_value); input.setInputType(InputType.TYPE_CLASS_TEXT); input.setLines(5); input.setMaxLines(5); input.setGravity(Gravity.LEFT | Gravity.TOP); builder.setView(input); builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { } }); builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); AlertDialog alert = builder.create(); alert.show(); 

И мой диалог выглядит так. Введите описание изображения здесь

Так как я могу это исправить. Спасибо и приветствую.

Попробуйте этот код для вашего EditText:

 input.setSingleLine(false); //add this input.setLines(4); input.setMaxLines(5); input.setGravity(Gravity.LEFT | Gravity.TOP); input.setHorizontalScrollBarEnabled(false); //this 

Используйте тип ввода input.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE) и input.setSingleLine(false) . Таким образом, ваш код будет –

 Builder builder = new AlertDialog.Builder(this); builder.setTitle("Comment"); final EditText input = new EditText(this); final String item_value = ItemList.get(position).get("comment"); input.setText(item_value); input.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE); input.setSingleLine(false) input.setLines(5); input.setMaxLines(5); input.setGravity(Gravity.LEFT | Gravity.TOP); builder.setView(input); builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { } }); builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); AlertDialog alert = builder.create(); alert.show(); 
 Builder builder = new AlertDialog.Builder(this); builder.setTitle("Comment"); final EditText input = new EditText(this); final String item_value = ItemList.get(position).get("comment"); input.setText(item_value); input.setInputType(InputType.TYPE_CLASS_TEXT); input.setSingleLine(false); input.setMaxLines(5); input.setGravity(Gravity.LEFT | Gravity.TOP); builder.setView(input); builder.setPositiveButton("Ok", new DialogInterface.OnClickListener(){ public void onClick(DialogInterface dialog, int whichButton) { } }); builder.setNegativeButton("Cancel",new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); AlertDialog alert = builder.create(); alert.show(); 

Это работает на меня. Вы можете использовать это свойство для среды выполнения EditText.

 <EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="top|left" android:inputType="textMultiLine" android:lines="8" android:maxLines="10" android:minLines="6" android:scrollbars="vertical" /> 

Установите атрибут android:inputType="textMultiLine" в вашем XML.

Если это не сработает, вам необходимо реализовать TextWatcher и вручную разбить строки.