Java 使用ListAdapter将项添加到ListView
各位晚上好, 我正在开发一个android应用程序,我有一个(自定义)ListView和一个自定义ListAdapter。当我试图通过调用ListAdapter上的Java 使用ListAdapter将项添加到ListView,java,android,listview,android-listview,listadapter,Java,Android,Listview,Android Listview,Listadapter,各位晚上好, 我正在开发一个android应用程序,我有一个(自定义)ListView和一个自定义ListAdapter。当我试图通过调用ListAdapter上的.add()将数据添加到ListView时,应用程序立即崩溃。我试图将ListAdapter的数据类型更改为ArrayList,但这并没有解决问题 我的ListAdapter代码: class DeviceListAdapter extends ArrayAdapter<Device> { public DeviceLi
.add()
将数据添加到ListView时,应用程序立即崩溃。我试图将ListAdapter的数据类型更改为ArrayList,但这并没有解决问题
我的ListAdapter代码:
class DeviceListAdapter extends ArrayAdapter<Device> {
public DeviceListAdapter(Context context, Device[] data) {
super(context, R.layout.device_row, data);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater li = LayoutInflater.from(getContext());
View cv = li.inflate(R.layout.device_row, parent, false);
Device dataItem = getItem(position);
TextView nameTextView = (TextView)cv.findViewById(R.id.nameTextView);
//TextView statusTextView = (TextView)cv.findViewById(R.id.statusTextView);
ImageView screenImageView = (ImageView)cv.findViewById(R.id.screenImageView);
nameTextView.setText((String)dataItem.Name);
Picasso.with(getContext()).load((String)dataItem.ImageUrl).into(screenImageView);
return cv;
}
编辑:对代码做了一些更改,现在使用自定义设备类而不是对象[]而不是
arad.add(devices.toArray());
试试看
我从未像这样使用过适配器,我认为您应该在代码中添加名为
data
的数组,然后通知适配器
data.add("Item X");//data.addAll(devices.toArray());
data.add("Item Y");
arad.notifyDataSetChanged();
什么是
设备
?你能添加代码吗?错误是什么?????
arad.add(devices.toArray());
arad.addAll(devices.toArray());
data.add("Item X");//data.addAll(devices.toArray());
data.add("Item Y");
arad.notifyDataSetChanged();