gpt4 book ai didi

Android - ArrayAdapter getCount 总是返回 0

转载 作者:行者123 更新时间:2023-11-29 17:55:28 26 4
gpt4 key购买 nike

我想为我的 ListView 添加数据,但 getCount() 方法总是返回 0。

public class MySellingListAdapter extends ArrayAdapter<MySellingData>
{
private Context context;
private List<MySellingData> listSellingData;

public MySellingListAdapter (Context context, int resourceId, List<MySellingData> listSellingData)
{
super(context, resourceId, listSellingData);

this.context = context;
this.listSellingData = listSellingData;
}

@Override
public int getCount()
{
int size = listSellingData == null ? 0 : listSellingData.size();

Log.e("DD", "" + size);

return size;
}
}

我有一个 Fragment 类,我在其中设置了适配器:

@Override
protected void onCreate(Bundle bundle)
{
if (mySellingListAdapter == null)
mySellingListAdapter = new MySellingListAdapter(instance, R.layout.row_selling_item, listSellingData);
}

我有一个获取数据的异步调用:

private void loadData()
{
// ...
@Override void onPostExecute(Data... values)
{
mySellingListAdapter.notifyDataSetChanged();
}
}

DD 0

DD 0

DD 0

DD 0

DD 0

DD 0

最佳答案

如果 Listnull 或为空(size= 0).在您发布的代码中,您永远不会向 listSellingData 添加/放置任何内容。

除此之外,您调用 mySellingListAdapter.notifyDataSetChanged(); 之前没有添加任何内容。

我猜你想做这样的事情:

private void loadData()
{
// ...
@Override
void onPostExecute(Data... values)
{
// note that this is Data and your type is MySellingData
// or even iterate over the values array and add all
mySellingListAdapter.add(values[0])
mySellingListAdapter.notifyDataSetChanged();
}
}

关于Android - ArrayAdapter getCount 总是返回 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19758818/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com