列表项的位置错误,即使列表按字母顺序排序

用户8668606

我有一个来自 AWS 的列表,列表按照数据库显示,点击监听器也工作正常。(就像我点击 New-York,它会显示 New-York 的详细信息)但是在用比较器排序后,列表是按字母顺序排列的……但是当我点击第一个项目时,它会显示一些其他城市的详细信息。

第一个活动代码

 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());
ρяσSρєя K

当我点击第一个项目时,它会显示一些其他城市的详细信息。

因为Comparator用于 Adapter 实例而不是lstSettlements. onItemClick根据排序的数据源返回位置,即lstStrings.

获取正确的 AreaName 名称为:

     String strAreaName=(String)adapterView.getItemAtPosition(i); 

并获取SettlementsTable对象onItemClick,将其传递给 Adapter 然后对 Adapter 应用排序并获取项目:

     SettlementsTable selectedObj=(SettlementsTable)
                                      adapterView.getItemAtPosition(i); 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将链接列表按字母顺序排序

来自分类Dev

按字母顺序排序链接列表

来自分类Dev

将列表按字母顺序排序

来自分类Dev

将链接列表按字母顺序排序

来自分类Dev

按字母顺序对多个列表进行排序

来自分类Dev

按项目对列表进行排序,按字母顺序排序

来自分类Dev

按首字母排序列表项

来自分类Dev

按字母顺序排序列表(不包括字母)

来自分类Dev

如何按字母顺序对字母数字列表进行排序

来自分类Dev

按出现顺序和字母顺序对列表进行排序

来自分类Dev

在React.js中按字母顺序对ul列表项进行排序时遇到麻烦(升/降)

来自分类Dev

按字母顺序对名称的链接列表进行排序

来自分类Dev

如何按字母顺序对模板中的对象列表进行排序?

来自分类Dev

按字符数和字母顺序对列表进行排序

来自分类Dev

无法按字母顺序对数组列表进行排序

来自分类Dev

在Android中按字母顺序排序列表

来自分类Dev

如何按字母顺序对列表视图进行排序

来自分类Dev

按出现和字母顺序对列表进行排序

来自分类Dev

角度多选下拉列表| 按字母顺序排序

来自分类Dev

按字母顺序对数组列表进行排序

来自分类Dev

按字母顺序对列表对象值进行排序

来自分类Dev

在C中按字母顺序对链接列表进行排序

来自分类Dev

Linq To Xml 返回按字母顺序排序的不同值列表

来自分类Dev

按字母顺序对列表中的文本范围进行排序

来自分类Dev

首先按字母顺序对列表进行排序,然后按数字对列表进行排序?

来自分类Dev

Python尝试对列表进行数字排序后按字母顺序对列表进行排序

来自分类Dev

按字母排序对象列表

来自分类Dev

首先按字母顺序排序列表,然后按数字顺序排序

来自分类Dev

按枚举排序列表,然后按字母顺序排序

Related 相关文章

  1. 1

    将链接列表按字母顺序排序

  2. 2

    按字母顺序排序链接列表

  3. 3

    将列表按字母顺序排序

  4. 4

    将链接列表按字母顺序排序

  5. 5

    按字母顺序对多个列表进行排序

  6. 6

    按项目对列表进行排序,按字母顺序排序

  7. 7

    按首字母排序列表项

  8. 8

    按字母顺序排序列表(不包括字母)

  9. 9

    如何按字母顺序对字母数字列表进行排序

  10. 10

    按出现顺序和字母顺序对列表进行排序

  11. 11

    在React.js中按字母顺序对ul列表项进行排序时遇到麻烦(升/降)

  12. 12

    按字母顺序对名称的链接列表进行排序

  13. 13

    如何按字母顺序对模板中的对象列表进行排序?

  14. 14

    按字符数和字母顺序对列表进行排序

  15. 15

    无法按字母顺序对数组列表进行排序

  16. 16

    在Android中按字母顺序排序列表

  17. 17

    如何按字母顺序对列表视图进行排序

  18. 18

    按出现和字母顺序对列表进行排序

  19. 19

    角度多选下拉列表| 按字母顺序排序

  20. 20

    按字母顺序对数组列表进行排序

  21. 21

    按字母顺序对列表对象值进行排序

  22. 22

    在C中按字母顺序对链接列表进行排序

  23. 23

    Linq To Xml 返回按字母顺序排序的不同值列表

  24. 24

    按字母顺序对列表中的文本范围进行排序

  25. 25

    首先按字母顺序对列表进行排序,然后按数字对列表进行排序?

  26. 26

    Python尝试对列表进行数字排序后按字母顺序对列表进行排序

  27. 27

    按字母排序对象列表

  28. 28

    首先按字母顺序排序列表,然后按数字顺序排序

  29. 29

    按枚举排序列表,然后按字母顺序排序

热门标签

归档