gpt4 book ai didi

java - 无法使用我的 POJO 解析构造函数 ArrayAdapter

转载 作者:行者123 更新时间:2023-12-02 10:52:02 24 4
gpt4 key购买 nike

我正在尝试创建 ArrayAdapter,以便单击列表中的一个元素并获取它的所有结果。这就是我正在做的事情。

public ArrayAdapter<UserPojo> getAdapter(Context adapterContext) {
return new ArrayAdapter<UserPojo>(adapterContext,android.R.layout.simple_list_item_1,getmList());
}


public LinkedList<String> getmList() {

mQueryDatabase.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
fetchData(dataSnapshot);
}

@Override
public void onCancelled(DatabaseError databaseError) {

}
});

return mList;
}

这里是我使用它来单击一个元素并获取其结果的地方

public void clickListItems(ListView listView,final DatabaseReference mRootDatabase) {
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
Toast.makeText(mContext, "Clicked: " + getmList().get(position), Toast.LENGTH_SHORT).show();
userPojo = getAdapter(mContext).getItem(position);
Intent intent = new Intent(mContext, UserEdit.class);
intent.putExtra("uid", mRootDatabase.getKey());
intent.putExtra("Name",getAdapter(mContext).getItem(position).getName());
intent.putExtra("Email", getAdapter(mContext).getItem(position).getEmail());
intent.putExtra("Pay", getAdapter(mContext).getItem(position).getPay());
intent.putExtra("LastCon", getAdapter(mContext).getItem(position).getLastCon());
intent.putExtra("FirstCon", getAdapter(mContext).getItem(position).getFirstCon();
mContext.startActivity(intent);
}
});

}

我面临的问题就在这一行

new ArrayAdapter(adapterContext,android.R.layout.simple_list_item_1,getmList());

这么说

Cannot resolve constructor 'ArrayAdapter(android.content.Context,int,LinkedList'

最佳答案

ArrayAdapter类需要创建与super匹配的构造函数。创建您的 YourAdapter:

YourAdapter yourAdapter = new YourAdapter(getActivity(), listYourPojo);

你的适配器类:

public class YourAdapter extends ArrayAdapter<YourPojo> {

public static List<YourPojo> listYourPojo = new ArrayList<>();
Context context;

public YourAdapter(Context context, List<YourPojo> listYourPojo) {
super(context, 0, listYourPojo);
this.context = context;
this.listYourPojo = listYourPojo;
}
}

如果你的列表listYourPojo是静态的,你只需要在你的 Intent 中传递索引。

关于java - 无法使用我的 POJO 解析构造函数 ArrayAdapter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52096997/

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