[英]How to add an adapter to a listView?
我有以下代碼將自定義適配器添加到listView,但是在我設置適配器的那一行上出現以下錯誤:
android.content.res.Resources $ NotFoundException:字符串資源ID#0x68
public class PackageListFragment extends Fragment {
PackageAdapter packageItemAdapter;
ArrayList<PackageClass> list;
PackageClass packageList;
TextView mainLine;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.activity_aps__main, container, false);
ListView lv = (ListView) rootView.findViewById(R.id.packageList);
try{
list = getAllPackages();
packageItemAdapter = new PackageAdapter(getActivity().getApplicationContext(), 0, list);
lv.setAdapter(packageItemAdapter);
}
}
catch(Exception ex){
Log.e("listItem", ex.toString());
}
return rootView;
}
public ArrayList<PackageClass> getAllPackages() throws Exception{
return new DBFunctions(getActivity().getApplicationContext()).RetrieveAllPackage();
}
}
我究竟做錯了什么? 我的應用程序甚至沒有啟動就停止了:(
編輯完您的問題后,我注意到try
/ catch
塊中的一個括號似乎是錯誤的。 我將您的代碼復制到此答案中,並注釋了可能令人討厭的括號。 但這可能只是問題而不是您的代碼中的一個錯誤,因為我不認為它可以解決此問題。
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.activity_aps__main, container, false);
ListView lv = (ListView) rootView.findViewById(R.id.packageList);
try{
list = getAllPackages();
packageItemAdapter = new PackageAdapter(getActivity().getApplicationContext(), 0, list);
lv.setAdapter(packageItemAdapter);
}
} // <---- seems out of place
catch(Exception ex){
Log.e("listItem", ex.toString());
}
return rootView;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.