Android-Change动态视图布局

时间:2013-07-22 07:48:35

标签: android android-layout view

我的活动中有一些观点:

for(int i=0;i<My_NewsGroup.size();i++)
    {
        View My_UpdateView=new View(MainActivity.this);
        My_UpdateView =LayoutInflater.from(MainActivity.this).inflate(R.layout.row2, null);
.....
    }

现在我想动态更改某些视图的布局!

我该怎么做?

TNX - - - - - - - - - - - - - - - - -编辑 - - - - - - - - ---

LinearLayout ll2 = (LinearLayout)findViewById(R.id.parent2);
    for(int i=0;i<My_NewsGroup.size();i++)
    {
        View My_UpdateView=new View(MainActivity.this);
        My_UpdateView = LayoutInflater.from(MainActivity.this).inflate(R.layout.row2, null);

                     ....
                     .....          
        RelativeLayout.LayoutParams relativeParams = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);

        ll2.addView(My_UpdateView,relativeParams);

        MyViewList.add(My_UpdateView);
    }

MyViewList是:List MyViewList = new ArrayList();

然后!例如,如果我想隐藏一些视图:

MyViewList.get(pos).setVisibility(View.GONE);

但现在我想改变一些视图的布局!

1 个答案:

答案 0 :(得分:0)

您无法更改视图本身并使用不同的xml布局重新填充它。您可以更改视图的容器内容。从ViewGroup中删除旧视图并将其替换为新视图。这是一个简单的例子:

FrameLayout somelayout...
somelayout.removeView(viewYouWantToReplace);
somelayout.addView(inflator.inflate(R.layout.row2, somelayout, false));