Я работаю с SQLite и получаю результаты из двух столбцов (имя, значок).Я хочу передать их в пользовательский адаптер, чтобы установить имя в качестве текста (TextView), а затем значок в качестве его drawableLeft с setCompoundDrawablesWithIntrinsicBounds .
во-первых, моя вставка в БД похожа на эту
"Fruit / Vegetables,R.drawable.ic_launcher",
"Meat / Fisth,R.drawable.ic_launcher"
в моем списке. У меня есть этот код после открытия БД и т. Д.
mShopCatCursor = mDbHelper.fetchShoppingCategories();
startManagingCursor(mShopCatCursor);
String[] names,icons;
while(mShopCatCursor.moveToNext()){
for(int i=-1,l=mShopCatCursor.getColumnCount(); ++i<l;){
names[i]= mShopCatCursor.getString(0);
icons[i]= mShopCatCursor.getString(1);
}
}
//this was taken from a tut
String[] from = new String[]{AppSQLite.KEY_NAME,AppSQLite.KEY_ICON};
TextViewWithDrawableListAdapter adap =
new TextViewWithDrawableListAdapter(this, from);
setListAdapter(adap);
что яхочу передать имена и значки, чтобы пользовательский адаптер сделал следующее
public View getView(int position, View convertView, ViewGroup parent){
View v = convertView;
if(v == null){
LayoutInflater inflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = inflater.inflate(R.layout.main_list_item, null);
}
TextView textView = (TextView) v.findViewById(R.id.main_menu_list_item);
я хочу это !!для каждого элемента списка нужно принимать правильные значения.
textView.setText(names[0]);
textView.setCompoundDrawablesWithIntrinsicBounds(icons[0], 0, 0, 0);
return v;
}
я знаю, что namew [0] и значок неверны, но я действительно не могу найти путь, даже просматривая в Интернете часы.