prasad ... Поле editText не имеет идентификатора, и если элемент представления не имеет идентификатора, состояние просмотра автоматически не сохраняется при программном уничтожении, когда пользователь меняет ориентацию телефона. Возможно, лучше создать пользовательский диалог с использованием макета XML, тогда текстовое поле для редактирования должно иметь и идентификатор, и состояние просмотра должны автоматически сохраняться при мягком уничтожении.
JAL
У меня есть код здесь .
Редактировать: код прототипа, взятый из Android Docs, который едва работает, потому что у меня нет времени работать над этим. Создайте макет XML в res / layout как alert_dialog_text_entry.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<EditText android:text="Stateful"
android:id="@+id/EditText01"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</EditText>
</LinearLayout>
А затем используйте этот макет для создания оповещения:
AlertDialog.Builder builder= new AlertDialog.Builder(this);
LayoutInflater inflater= getLayoutInflater();
final View myView= inflater.inflate(R.layout.alert_dialog_text_entry, null);
builder.setTitle("About");
builder.setMessage(alertMessage+"Version: "+versionName);
builder.setView(myView);
AlertDialog alert= builder.create();
Поскольку поле editText имеет идентификатор, оно, похоже, сохраняет состояние при мягком уничтожении.