Intereting Posts
Поля по умолчанию FloatingActionButton не работают в леденец Удалите SMS с android по 4.4.4 (Затронутые строки = 0 (Zero), после удаления) Как использовать getContentResolver в классе без активности? Как сделать независимую прокрутку строк и столбцов (приложение la Netflix) на Android в WebView? Как использовать дополнительные * .so библиотеки на Android Studio и NDK OnEditorActionListener вызывается дважды с одним и тем же событием на клавиатуре SenseUI Android Project: как лучше всего организовать файлы Как исправить: «HAX не работает, а эмулятор работает в режиме эмуляции» Android Sqlite получить последний идентификатор строки строки Ошибка c2dm 401 при отправке сообщений после приема идентификатора и токена аутентификации Решение для локального кэширования изображений для Android: Square Picasso vs Universal Image Loader Функция PBKDF2 в Android Проводник файлов всегда пуст в Eclipse Android webview shouldOverrideUrlLoading не вызывается Как упаковать приложение командной строки в apk?

Android – значение по умолчанию в editText

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

Есть ли способ сделать это? Спасибо за любую помощь

Solutions Collecting From Web of "Android – значение по умолчанию в editText"

Вы можете использовать EditText.setText(...) чтобы установить текущий текст поля EditText.

Пример:

 yourEditText.setText(currentUserName); 

Есть hint ? Вы можете использовать setHint() для его установки или установить в XML (хотя вы, вероятно, этого не хотите, потому что XML не «знает» имя / адрес вашего пользователя :))

Из xml:

  android:text="yourtext" 

Вы можете использовать свойство text в вашем XML- файле для определенных полей Edittext. Например :

 <EditText android:id="@+id/ET_User" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="yourusername"/> 

Например, все поля Edittext содержат текст, который хотите, если пользователь хочет изменить конкретное поле Edittext, он удаляет старый текст и вводит свой новый текст.

В противном случае вы получите конкретный идентификатор поля Edittext в классе активности и установите для него текст.

Другой способ = программно

Пример:

 EditText username=(EditText)findViewById(R.id.ET_User); username.setText("jack"); 

Сначала вам нужно как-то загрузить данные пользователя

Затем вам нужно найти свой EditText, если у вас его нет,

EditText et = (EditText)findViewById(R.id.youredittext);

После того, как вы нашли свой EditText, позвоните

 et.setText(theUserName); 

Вы можете сделать это таким образом

 private EditText nameEdit; private EditText emailEdit; private String nameDefaultValue = "Your Name"; private String emailDefaultValue = "abc@xyz.com"; 

И внутри метода onCreate

 nameEdit = (EditText) findViewById(R.id.name); nameEdit.setText(nameDefaultValue); nameEdit.setOnTouchListener( new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { if (nameEdit.getText().toString().equals(nameDefaultValue)){ nameEdit.setText(""); } return false; } }); nameEdit.setOnFocusChangeListener(new OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if(!hasFocus && TextUtils.isEmpty(nameEdit.getText().toString())){ nameEdit.setText(nameDefaultValue); } else if (hasFocus && nameEdit.getText().toString().equals(nameDefaultValue)){ nameEdit.setText(""); } } }); emailEdit = (EditText)findViewById(R.id.email); emailEdit.setText(emailDefaultValue); emailEdit.setOnFocusChangeListener(new OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if(!hasFocus && TextUtils.isEmpty(emailEdit.getText().toString())){ emailEdit.setText(emailDefaultValue); } else if (hasFocus && emailEdit.getText().toString().equals(emailDefaultValue)){ emailEdit.setText(""); } } });