Android gridviewにテキスト ラベルを追加する方法はありますか? 標準の Android の例であるHello GridViewを使用しています。
たとえば、各画像の下に画像のタイトルを追加したい場合、これを行う方法はありますか? もしそうなら、誰かがこれがどのように機能するか説明できますか? または、これを実装する別の方法はありますか? ありがとう!
Android gridviewにテキスト ラベルを追加する方法はありますか? 標準の Android の例であるHello GridViewを使用しています。
たとえば、各画像の下に画像のタイトルを追加したい場合、これを行う方法はありますか? もしそうなら、誰かがこれがどのように機能するか説明できますか? または、これを実装する別の方法はありますか? ありがとう!
ListRow を表示するカスタム レイアウトを定義する ListView のように、カスタム GridView を作成できます。また、GridView アイテムのカスタム レイアウトを作成することもできます。GridView については、この例を参照してください。
単純な GridView の使用 現在行っているように 1 つの ImageView を表示できます。各グリッド アイテムに別のビュー (テキスト) を追加する場合は、TextView と ImageView を含む 1 つの XML ファイルを作成する必要があります。
次に、アダプターでその XML ファイルを使用し、GetView メソッドでイメージとテキストをビューに設定できます。
たとえば、 LinearLayout を取り、 imageview 、 textview を追加し、そのレイアウトを膨らませて convertview に割り当てます。
アクティビティからこのアダプターを呼び出します
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"
};