2011-12-09 13 views
2

android gridviewにテキストラベルを追加する方法はありますか?私は、標準のAndroidの例、Hello GridViewを使用しています。Android Gridviewにラベル/テキストを追加

例えば、の画像の下に画像タイトルを追加したい場合は、画像をに追加する方法がありますか?もしそうなら、誰かがこれがどのように機能するか説明できますか?あるいは、これを実装する別の方法がありますか?ありがとう!

答えて

7

ListViewコントロールのように、我々はあなたがまた、GridViewコントロールのためにthis Exampleを参照してください GridViewの項目のカスタムレイアウトを作成することができListRowを表示するカスタムレイアウトを定義するとあなたは、カスタムのGridViewを作成することができます。簡単なのGridViewを使用して

あなたはあなたが今やっているように、各グリッド項目を持つ別のビュー(テキスト)、 を追加したい場合は、 は今あなたが含む1つのXMLファイルを作成する必要があります1つのImageViewのを単に表示することができますTextViewおよびImageView。

次に、XMLファイルをアダプタとGetViewメソッドで使用して、イメージとテキストをビューに設定できます。ここで

は同じのためanother exampleされており、ここでは別のGood Exampleです。あなたの活動から

+1

グレートためのコードです!これは私が探していたものです! – user836200

+0

最新の編集後に回答を確認しましたか?2つのリンクが追加されました。これらを参照して、カスタムGridViewの詳細を知っておくことをおすすめします。 – MKJParekh

+0

どちらも素晴らしい例です(どちらも最初のものより優れています)。再度、感謝します! – user836200

1

for Exaampleは、LinearLayoutを取り、イメージビューを追加し、テキストビューを作成し、そのレイアウトを膨張させ、変換ビューをassingnします。

0

コールこのアダプタは

 GridView view =(GridView) findViewbyId(is of grid view here); 
     view.setAdapter(new BottomMenuGridAdaptor(this.context)); 

これは、アダプタ

 public class BottomMenuGridAdaptor extends BaseAdapter { 


private Context context; 
public BottomMenuGridAdaptor(Context context) { 
    super(); 
    this.context = context; 
} 

@Override 
public int getCount() { 
    return mThumbIds.length; 
} 

@Override 
public Object getItem(int position) { 
    return position; 
} 

@Override 
public long getItemId(int position) { 
    return position; 
} 

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 

    if (convertView == null){ 
     convertView = LayoutInflater.from(context).inflate(R.layout.tab_button, null); 
    } 
    LinearLayout ll=(LinearLayout) convertView.findViewById(R.id.linear_topbar); 

    if(position==PostionHandler.getPosition(context)) 
     ll.setBackgroundResource(R.drawable.tab_blue_bg); 
    else 
     ll.setBackgroundResource(R.drawable.tab_red_bg); 

    ImageView imageView=(ImageView)convertView.findViewById(R.id.icon); 
    imageView.setImageResource(mThumbIds[position]); 
    TextView txt= (TextView) convertView.findViewById(R.id.title); 
    txt.setText(mThumbtext[position]); 
    return convertView; 
} 

private Integer[] mThumbIds = { 
     R.drawable.temp_thisweek, 
     R.drawable.temp_store, 
     R.drawable.temp_mylibrary, 
     R.drawable.temp_lateststore, 
     R.drawable.temp_more 
}; 

private String[] mThumbtext = { 
     "This Week", 
     "C&EN Store", 
     "My Library", 
     "Latest News", 
     "More" 
}; 
関連する問題