0
我在我的應用程序中有兩個ArrayList;一個包含所有工作站的列表(AllStations
),另一個包含用戶選擇的工作站列表(MyStations
)。用戶將從微調器中選擇包含AllStations陣列列表中所有項目的電臺,並將它們添加到myStations
陣列列表中。有一個列表視圖,顯示來自myStations
arrayList的數據。從微調項添加項目到ListView不起作用
當用戶選擇要添加到mystations
數組列表中的工作站時,它會將其添加到「myStations」,但列表視圖不會刷新。我試過adapter.notifyDataSetChanged()
我花了幾天Google搜索等,並沒有找到任何理由爲什麼不刷新。誰能幫我?
public class MyStations extends Activity{
ListView personalStations;
Spinner spinner;
ArrayList<String>AllStations = new ArrayList<String>();
ArrayList<String>MyStations = new ArrayList<String>();
ArrayAdapter<String> StationNames;
ArrayAdapter<String> myStationNames;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.my_stations);
assignStations();
spinner = (Spinner) findViewById(R.id.spinner1);
StationNames = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, AllStations);
spinner.setAdapter(StationNames);
spinner.setOnItemSelectedListener(new OnItemSelectedListener()
{
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3)
{
String selectedStation = spinner.getSelectedItem().toString();
MyStations.add(selectedStation);
myStationNames.notifyDataSetChanged();
TextView txt1 = (TextView) findViewById(R.id.textView1);
int size = MyStations.size();
String sizes= String.valueOf(size);
txt1.setText(sizes);
}
public void onNothingSelected(AdapterView<?> arg0)
{
// TODO Auto-generated method stub
}
});
personalStations = (ListView) findViewById(R.id.myStnList);
myStationNames = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, MyStations);
personalStations.setAdapter(new ArrayAdapter<String>(MyStations.this, android.R.layout.simple_list_item_1, MyStations));
}
public void assignStations(){
ImportData stationData = new ImportData();
stationData.importStations();
AllStations = stationData.getStationNames();
}
}
乾杯Luksprog,工作! – 2013-03-24 11:59:16