Сохранение позиции выбранного элемента Spinner1 при изменении позиции выбранного элемента Spinner2
Использую spinner2, в котором есть по 3 значения, скажем, если у меня есть "кошки", установленные по умолчанию, и я выбираю "мыши" из раскрывающегося списка. Если я выбираю любое значение из списка в spinner1, spinner2 возвращается к умолчанию "кошки". Как я могу сохранить состояние таким образом, что, когда я выбираю "мыши" и выбираю любое значение в spinner1, spinner2 сохраняет выбранное значение.
spinner2.setOnItemSelectedListener(new OnItemSelectedListener() {
int count=0;
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
if(count >= 1){
int item = spinner2.getSelectedItemPosition();
switch(item){
case 0:
break;
case1:
break;
}
}
count++;
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
Работает, но необходимо каждый раз выбирать элемент вручную. Для выбора уже выбранного элемента spinner:
import android.content.Context;
import android.content.DialogInterface;
import android.util.AttributeSet;
import android.widget.Spinner;
public class CustomSpinner extends Spinner {
private OnItemClickListener onItemClickListener;
public CustomSpinner(Context context)
{ super(context); }
public CustomSpinner(Context context, AttributeSet attrs)
{ super(context, attrs); }
public CustomSpinner(Context context, AttributeSet attrs, int defStyle)
{ super(context, attrs, defStyle); }
@Override public void
setSelection(int position, boolean animate)
{
boolean sameSelected = position == getSelectedItemPosition();
super.setSelection(position, animate);
if (sameSelected) {
getOnItemSelectedListener().onItemSelected(this, getSelectedView(), position, getSelectedItemId());
}
}
@Override public void
setSelection(int position)
{
boolean sameSelected = position == getSelectedItemPosition();
super.setSelection(position);
if (sameSelected) {
getOnItemSelectedListener().onItemSelected(this, getSelectedView(), position, getSelectedItemId());
}
}
}