2012-01-24 9 views
0

私はsqliteを使用して2つの列(名前、アイコン)の結果をフェッチします。私はそれらをカスタムアダプタに渡して、(TextView)のテキストとして名前を設定し、次にdrawableLeftとしてアイコンをsetCompoundDrawablesWithIntrinsicBoundsで渡したいと思います。私が欲しいものsqliteの結果を処理してカスタムリストアダプターに渡します

デシベルですべての私のインサートの最初のiは、DBなどをopenningした後、このコードを持っている私のlistActivityでこの

"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; 
} 

私は[0]とアイコンをnamew知っているが正しくありませんが、私は実際にも、時間のためのWebを検索して、方法を見つける傾けます。

答えて

0

私の知る限りでは、あなたが望むものについてはっきりしません。名前とアイコンの配列をカスタム・アダプター・クラスに渡す場合は、カスタム・アダプター・クラスのコンストラクターを使用して受け取ることができます。またはthis tutorialを読んでください。

関連する問題