notifyDataSetChanged не обновляет мой счетчик

59
7

У меня есть 2 прядильника с двумя различными адаптерами (adapter и adapter2). Основываясь на моем выборе моего первого адаптера (adapter), я adapter2 свой второй счетчик (adapter2). После изменения данных в первом adapter2.notifyDataSetChanged(); я вызвал для adapter2.notifyDataSetChanged(); но это не обновление моего второго счетчика. Есть идеи?

UPDATE: обновляется, если я вызываю новый адаптер и устанавливаю его следующим образом:

adapter2 = new ArrayAdapter<String> (this, android.R.layout.simple_spinner_item, objectList);
playerSpinner.setAdapter(adapter2);

но я не думаю, что это правильный способ сделать это....

ArrayAdapter<String> adapter = new ArrayAdapter<String> (this, android.R.layout.simple_spinner_item, sDefaultPositions);
positionSpinner.setAdapter(adapter);

adapter2 = new ArrayAdapter<String> (this, android.R.layout.simple_spinner_item, objectList);
playerSpinner.setAdapter(adapter2);

positionSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View arg1, int pos, long arg3)
{
changeSpinnerView(parent.getItemAtPosition(pos).toString());
Log.i("YourTeam", "ItemSlected"+objectList.toString());
adapter2.notifyDataSetChanged();
}
});

private void changeSpinnerView(String position)
{
objectList = getResults(playerkey);
Collections.sort(objectList);

}

public ArrayList<String> getResults(int key)
{
BLLPlayer playerdatasource = new BLLPlayer(this);
playerdatasource.open();

ArrayList<PlayerBean> resultList = new ArrayList<PlayerBean>();

resultList = (ArrayList<PlayerBean>) playerdatasource.getAllFunctionList(key);

playerdatasource.close();

return getPlayerName(resultList);
}

private ArrayList<String> getPlayerName(ArrayList<PlayerBean> resultList)
{
ArrayList<String> nameList = new ArrayList<String>();

for (int iIndex = 0; iIndex < resultList.size(); iIndex++)
{
String beanName = resultList.get(iIndex).getName();

if (beanName.equals("1"))
{
beanName = "";
}
else
{
nameList.add(beanName);
}
}

return nameList;

}

спросил(а) 2012-09-03T22:49:00+04:00 8 лет, 2 месяца назад
0
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема