Я хочу реализовать инвертор android с ключевым значением.Лучшая практика для реализации пары ключ-значение в android Spinner
ан: английский JP: японский
И когда пользователь выбирает и пункт я хочу, чтобы сохранить ключ к базе данных. А также при следующей загрузке я хочу, чтобы spinner выбрал положение вращающихся частиц.
Может ли кто-нибудь рассказать мне, что является лучшим способом реализовать это.
Я попытался следующие, но не встретил мои требования https://gist.github.com/granoeste/2786663 Set Key and Value in spinner
Написать в настоящее время я использую LinkedHashMapAdapter. Но проблема в том, что здесь мне нужно сохранить позицию в БД или локальных общих предпочтениях. Я не думаю, что это лучшее решение
Текущая реализация
LinkedHashMap localeList = new LinkedHashMap<>();
for (Map.Entry<String, String> val : map.entrySet()) {
int resourceId = getResources().getIdentifier(val.getValue(), "string", getPackageName());
localeList.put(val.getKey(), getResources().getString(resourceId));
}
LinkedHashMapAdapter<String, String> arrayAdapter = new LinkedHashMapAdapter<>(this, R.layout.spinner_layout, localeList);
arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mLocale.setAdapter(arrayAdapter);
String localPosSelected = PreferencesHelper.getSharedPreferenceString(this, Constants.PREF_LOCALE_POS_KEY);
if(localPosSelected!=null){
mLocale.setSelection(Integer.parseInt(localPosSelected));
}
Также есть опция для выбранного пункта Spinner значением
Можете ли вы рассмотреть этот сценарий. Я сохранил JP в базе данных. И в следующей загрузке я хочу, чтобы JP (японский) был предварительно выбран в spinner. – Rahul
Пожалуйста, проверьте мой Обновленный ответ и идите дальше. Если этот ответ будет полезен, тогда дайте ему право голоса. –
Вы предлагаете мне поддерживать как ArrayList, так и HashMap? – Rahul