【发布时间】:2017-11-10 15:40:17
【问题描述】:
我有一个来自 AWS 的列表,列表按照数据库显示,点击监听器也工作正常。 (就像我点击纽约一样,它将显示纽约的详细信息)但在使用比较器排序后,列表按字母顺序排列..但是当我点击第一项时,它显示了一些其他城市的详细信息。
第一个活动代码
List<SettlementsTable> lstSettlements = new ArrayList<>();
lstSettlements.addAll((List<SettlementsTable>) result);
for (final SettlementsTable table : lstSettlements)
lstStrings.add(table.getAreaName());
adapter = new SettlementListAdapter(lstStrings, getApplicationContext());
listView.setAdapter(adapter);
adapter.sort(new Comparator<String>() {
@Override
public int compare(String s, String t1) {
return s.compareTo(t1);
}
});
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
SettlementsTable settlementsTable = lstSettlements.get(i);
Intent intent = new Intent(SettlementsActivity.this, SettlementListResultActivity.class);
intent.putExtra("KEY", (Serializable) settlementsTable);
startActivity(intent);
}
第二个活动代码
settlementsTable = (SettlementsTable) getIntent().getSerializableExtra("KEY");
toolbar.setTitle(settlementsTable.getAreaName());
population = (TextView) findViewById(R.id.textview1);
establishYear= (TextView) findViewById(R.id.textView3);
population.setText(settlementsTable.getPopulation_2015());
【问题讨论】: