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(仅限线性布局)并在运行时根据位置添加视图

于 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));

然后只需确保在所有 xmls grid_text 中命名文本字段即可。

于 2012-06-25T05:55:10.030 回答