【问题标题】:Sub item in list view doesn't work列表视图中的子项不起作用
【发布时间】:2017-11-04 08:06:38
【问题描述】:

我的代码是关于一个带有子项的列表视图,我用数组 string[] 填充它,但只显示第一个字符串,有人可以帮我吗?

private String[] d1 = new String[5];

private String[] d2 = new String[5];

ArrayList<HashMap<String, String>> data;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.listview);
listView = (ListView) findViewById(R.id.list);

    for(int i=0;i<lengh;i++){
        Map<String,Object> daat = new HashMap<String, Object>();
        daat.put("title",  d1[i]);
        daat.put("sub", d2[i]);
        data.add(daat);
    }

    SimpleAdapter adapter = new SimpleAdapter(this, data, android.R.layout.simple_list_item_2,
            new String[]{"title", "sub"}, new int[]{android.R.id.text1, android.R.id.text2});

    listView.setAdapter(adapter);
    adapter.notifyDataSetChanged();

my example

【问题讨论】:

  • 这里有问题i&lt;lengh;。检查下面的答案。
  • 我修好了,结果还是一样
  • 在您的图像中,您显示了几个项目分隔符。因此,看起来您的列表视图中已经有了项目,但项目的内容是“”。您可以尝试在 for 循环中,将 d1[i] 替换为 d1[0] 以查看是否可以显示其他项目。希望有所帮助!

标签: android listview dynamic subitem


【解决方案1】:
 for(int i=0;i<d1.length;i++){
    Map<String,Object> daat = new HashMap<String, Object>();
    daat.put("title",  d1[i]);
    daat.put("sub", d2[i]);
    data.add(daat);
 }

在 for 循环中听到指定字符串长度并尝试我希望它有效。

【讨论】:

  • 谢谢!,但仍然显示图像中的第一个字符串,可以帮助我吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多