У меня есть страница с 5 прядильщиками. Поскольку пользователь вошел в систему и изменил параметры своей учетной записи, я хотел бы, чтобы spinner загрузил выбор пользователя для счетчика. В настоящий момент каждый счетчик загружает первое значение в своем адаптере «Пожалуйста, выберите». Это нормально, если сервер проверен, и пользователь еще не сделал выбор - но я бы хотел, чтобы это было принято на основе очевидных условий.Установить выбор счетчика на основе данных сервера?
Есть ли хороший способ сделать это? Я только что закончил код для отправки вариантов spinner на сервер и хранения их рядом с соответствующим пользователем. Поэтому я знаю, что мне нужны разные PHP-запросы, это не проблема. Но как установить видимое значение для счетчика внутри onCreate?
ageSpinner = (Spinner) findViewById(R.id.ageSpinner);
ageAdapter = ArrayAdapter.createFromResource
(this, R.array.ageArray, android.R.layout.simple_spinner_item);
ageAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
ageSpinner.setAdapter(ageAdapter);
ageSpinner.setTag("age");
ageSpinner.setOnItemSelectedListener(new MyOnItemSelectedListener());
eduSpinner = (Spinner) findViewById(R.id.eduSpinner);
eduAdapter = ArrayAdapter.createFromResource
(this, R.array.eduArray, android.R.layout.simple_spinner_item);
eduAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
eduSpinner.setTag("edu");
eduSpinner.setAdapter(eduAdapter);
eduSpinner.setOnItemSelectedListener(new MyOnItemSelectedListener());
maritalSpinner = (Spinner) findViewById(R.id.maritalSpinner);
maritalAdapter = ArrayAdapter.createFromResource
(this, R.array.maritalArray, android.R.layout.simple_spinner_item);
maritalAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
maritalSpinner.setTag("marital");
maritalSpinner.setAdapter(maritalAdapter);
maritalSpinner.setOnItemSelectedListener(new MyOnItemSelectedListener());
nationalitySpinner = (Spinner) findViewById(R.id.nationalitySpinner);
nationalityAdapter = ArrayAdapter.createFromResource
(this, R.array.nationalityArray, android.R.layout.simple_spinner_item);
nationalityAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
nationalitySpinner.setTag("nationality");
nationalitySpinner.setAdapter(nationalityAdapter);
nationalitySpinner.setOnItemSelectedListener(new MyOnItemSelectedListener());
public class MyOnItemSelectedListener implements OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent,
View view, int pos, long id) {
if (pos != 0) {
param.add(new BasicNameValuePair(parent.getTag().toString(),
parent.getItemAtPosition(pos).toString()));
}
}
public void onNothingSelected(AdapterView parent) {
// Do nothing.
}
}
Не дубликат. У меня есть данные, собранные с сервера. Я знаю, какой выбор сделал пользователь, и загрузил/сохранил его на моем сервере ранее. Это относится конкретно к настройке представления по умолчанию в ArrayAdapter на основе строк, загруженных с сервера. – Davek804