4

現在、カスタムリストビューを使用しており、表示するxmlファイルを拡張しています。レイアウトを膨らませて、位置によって膨らませたいと思いました。

public View getView(int position,View v,ViewGroup parent) {
    if (v == null) {
        v = li.inflate(R.layout.grid_item,null);

        final TextView tv = (TextView) v.findViewById(R.id.grid_text);
        tv.setText(String.valueOf(position+1));
    }

グリッドアイテムは私が膨らませているものです。テキストビューを維持しながら、位置に応じていくつかの異なるアイテムを膨らませたいです。現在、これを行うために、変更しているgrid_item内に画像がありますが、この方法で行いたいと思います。

4

2 に答える 2

0

位置ごとに異なるxmlを作成する

 or

コンテナを使用してxmlを作成し(Linearlayoutのみ)、実行時に位置ごとにビューを追加します

于 2012-06-25T05:42:43.717 に答える
0

わかりましたので、位置に基づいて別のxmlを膨らませたい場合は、古い学校のコードを使用してください。

if (v == null) {
    if(position < 5){//whatever condition you want here    
        v = li.inflate(R.layout.grid_item,null);
    }
    else{
        v = li.inflate(R.layout.grid_item2,null);
    }
}

final TextView tv = (TextView) v.findViewById(R.id.grid_text);
tv.setText(String.valueOf(position+1));

次に、すべての xml でテキスト フィールドに grid_text という名前を付けてください。

于 2012-06-25T05:55:10.030 に答える