java - ArrayList 对象在 java android 的 ListView 上返回一行

标签 java android mysql listview arraylist

我试图从 MySQL 数据库添加对象到 ArrayList 对象上,但结果只给我一行 我在我的 ListView 上使用自定义适配器,我想我可以使用循环多个对象到 ArrayList 对象,但我失败了,请帮助我,

我的代码:

String driver_fullname = json.getString("driver_fullname");
String driver_phonenumber = json.getString("driver_phonenumber");
String plate_no = json.getString("plate_no");
String parking_name = json.getString("parking_name");

List<PaymentTiming_Items> getAllDiverDetails = new ArrayList<PaymentTiming_Items>();
PaymentTiming_Items timingItems = new PaymentTiming_Items();
timingItems.setPlateNo(plate_no);
timingItems.setParkingName(parking_name);
timingItems.setDriverFullName(driver_fullname);
getAllDiverDetails.add(timingItems); // store all drivers' info to
}

if (getAllDiverDetails.size() !=0) {
userList =  new ArrayList<>   (getAllDiverDetails);
listAdapter = new PaymentTiming_ListAdapter(getApplicationContext(), userList);
myList.setAdapter(listAdapter);
}

最佳答案

看起来您每次解析对象时都在创建一个 ArrayList。如果我没理解错的话,你的代码应该是这样的:

// ArrayList will be created only once for a json response.
    List<PaymentTiming_Items> getAllDiverDetails = new ArrayList<PaymentTiming_Items>();

  //Now parse add all elements in json response and add to list.
        for(all items in your jsonResponse List ) {    
            //Parse fields from json object
            String driver_fullname = json.getString("driver_fullname");
            String driver_phonenumber = json.getString("driver_phonenumber");
            String plate_no = json.getString("plate_no");
            String parking_name = json.getString("parking_name");

            //create object
            PaymentTiming_Items timingItems = new PaymentTiming_Items();
            timingItems.setPlateNo(plate_no);
            timingItems.setParkingName(parking_name);
            timingItems.setDriverFullName(driver_fullname);
            getAllDiverDetails.add(timingItems); // store all drivers' info to
        }

        //Now list will have all the items, Add this list to adapter.   
            if (getAllDiverDetails.size() !=0) {
            userList =  new ArrayList<>(getAllDiverDetails);
            listAdapter = new PaymentTiming_ListAdapter(getApplicationContext(), userList);
            myList.setAdapter(listAdapter);
            }

关于java - ArrayList 对象在 java android 的 ListView 上返回一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47365857/

相关文章:

android - 如何使用 TraceView 对 Android 应用程序进行内存分析

java - 尝试从 Unity 4.6 中的 Java 插件设置纹理

PHP 表单不提交数据,它只是重新加载页面

php - SQL INNER JOIN中如何使用AS?

android - 在 imageview 中显示来自 Intent 的 jpg 图像

C++/MySQL,在 1 次执行中插入 200 个数据点数组

java - Tomcat 具有同一应用程序的多个实例

java - 如何使用 Flickrj api 向 Flickr 发送简单的 ping 测试

java - Windows 2012 Server 用户锁定时 Camel 停止消费

java - 泛型:如何处理类层次结构中的多个有界类型