提问人:amir mohammad 提问时间:4/26/2023 最后编辑:Ryan Mamir mohammad 更新时间:4/27/2023 访问量:23
List 上没有 setAdapter 方法将其连接到 Listview
No setAdapter method on List to connect it to Listview
问:
我编写了一个程序,该程序使用改造库从服务器获取数据,并将其显示在包含 Listview 的片段中。 问题是我没有setadapter选项将数据连接到列表视图 请指导我
public class get_data extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view=inflater.inflate(R.layout.fragment_get_data,container,false);
List list=view.findViewById(R.id.listview);
Button btn_get_data=view.findViewById(R.id.btn_get_data);
btn_get_data.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
getdata();
}
private void getdata() {
Call<List<models>> call=ApiClient.getInstance().getApi().getdata();
call.enqueue(new Callback<List<models>>() {
@Override
public void onResponse(Call<List<models>> call, Response<List<models>> response) {
List<models> modelsList=response.body();
String[] name=new String[modelsList.size()];
for (int i=0;i<modelsList.size();i++){
name[i]=modelsList.get(i).getName();
}
ArrayAdapter<String> adapter=new ArrayAdapter<String>(getContext(),
androidx.appcompat.R.layout.support_simple_spinner_dropdown_item,
name);
//-----this section not work----\\\
// list.setadapter(adapter);
}
@Override
public void onFailure(Call<List<models>> call, Throwable t) {
Toast.makeText(getContext(), t.getMessage(), Toast.LENGTH_SHORT).show();
Log.e("erorr", t.getMessage() );
}
});
}
});
return view;
}
}
请帮我解决这个问题
答:
0赞
Divesh
4/26/2023
#1
变量列表的类型对象是 ,它甚至不是一个,因此你看不到 set adapter 选项!根据您在布局 XML 中使用的视图元素来制作 ID 。List
View
RecyclerView
ListView
listview
评论
0赞
Ryan M
4/27/2023
基于 ,它需要是一个 .ArrayAdapter
ListView
0赞
amir mohammad
4/27/2023
谢谢你的建议,问题正是你说的
评论