【问题标题】:Populating a list-view with an arraylist使用 arraylist 填充列表视图
【发布时间】:2014-06-08 22:59:06
【问题描述】:

我在这段代码中不断收到此错误http://prntscr.com/3qygj9(抱歉,我无法复制和粘贴)

final ArrayList<HashMap<String, String>> foodList = db.getAllFood();
    if(foodList.size() != 0){
        ListView listView = (ListView) findViewById(R.id.foodListView);

        ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
                this,
                android.R.layout.simple_list_item_1,
                foodList );

        listView.setAdapter(arrayAdapter);
    }

我这辈子都想不通为什么。提前致谢!

【问题讨论】:

    标签: java android android-listview arraylist


    【解决方案1】:

    请使用ArrayAdapter&lt;HashMap&lt;String, String&gt;&gt; 而不是ArrayAdapter&lt;String&gt;

    ArrayAdapter<HashMap<String, String>> arrayAdapter = new ArrayAdapter<HashMap<String, String>>(
                    this,
                    android.R.layout.simple_list_item_1,
                    foodList );
    

    【讨论】:

      【解决方案2】:

      您用于构建 ArrayAdapter 的类型看起来根本不兼容。

      要构建ArrayAdapter&lt;String&gt;,构造函数的最后一个参数应该是ArrayList&lt;String&gt; 类型。但是在您的代码中,您为该参数传递的 foodList 变量的类型是 ArrayList&lt;HashMap&lt;String, String&gt;&gt;

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-05
        • 1970-01-01
        • 2015-08-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多