получение списка ранее введенных строк под текстом редактирования в Android «как поле имени пользователя в каком-либо электронном письме / веб-сайте»
Я хочу несколько направлений. Я не очень ясно понимаю об этом. Так пожалуйста...
Вот мой текст редактирования в формате xml:
<EditText
android:id="@+id/editTextName"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_margin="3dp"
android:hint="Insert Name"
android:onClick="surNameEditTextClick" />
Код для получения строки ввода текста редактирования:
EditText nameText = (EditText) findViewById(R.id.editTextName);
String name = nameText.getText().toString();
Сохранение строки имени в массив-список строк:
ArrayList<String> nameArrayList = new ArrayList<String> ; //created globally
if(!(nameArrayList.contains(name))){
//Adding input string into the name array-list
nameArrayList.add(name) ;
}
Помещение этого списка массива в общие настройки:
SharedPreferences saveGlobalVariables = getSharedPreferences(APP_NAME, 0);
SharedPreferences.Editor editor = saveGlobalVariables.edit();
editor.putStringSet("name", new HashSet<String>(surNameArrayList));
editor.commit();
Возвращение всех данных Shared-Preferences обратно в список массивов при загрузке программы (в onCreate ()):
SharedPreferences loadGlobalVariables = getSharedPreferences(APP_NAME, 0);
nameArrayList = new ArrayList<String>(loadGlobalVariables.getStringSet("name", new HashSet<String>()));
Теперь, как получить эти данные в виде представления под этим текстом редактирования. Я видел разные методы, но не совсем ясно. Если я использую
EditText mNameEditText;
mNameEditText = (EditText)findViewById(R.id.editTextName);
mNameEditText.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s){
}
public void beforeTextChanged(CharSequence s, int start, int count, int after){
}
public void onTextChanged(CharSequence s, int start, int before, int count){
}
});
Тогда какой фрагмент кода будет использован здесь? Какой textView или list-view следует использовать и где ??? Я не могу этого понять. Если любой другой метод доступен, пожалуйста, предоставьте здесь. С уважением,