0

我正在开发一个LayoutInflator用于生成新布局的 Android 应用程序。该应用程序的基本功能是 - 它有一个图像视图。当我单击一个按钮时,我会更改布局以显示多个 ImageView(如 2x2 或 4x4)。我使用 LayoutInflator 成功地显示了这些布局。但是,以前的 Layout 保持不变,新的 Layout 显示旧的 Layout 上,这有点弄乱了整个布局。我的问题是 - 在显示新布局之前是否有破坏旧布局?

编辑:

这是代码(关于我正在使用的 onClick 事件)

public void oneby1onClick(View view){
    RelativeLayout main = (RelativeLayout)findViewById(R.id.main_layout);
    view = getLayoutInflater().inflate(R.layout.activity_main, main,false);
    main.removeView(main);
    main.addView(view);
}

public void twoby2onClick(View view){
    RelativeLayout main = (RelativeLayout)findViewById(R.id.main_layout);
    view = getLayoutInflater().inflate(R.layout.twoby2, main,false);
    main.removeView(main);
    main.addView(view);
}

public void fourby4onClick(View view){
    RelativeLayout main = (RelativeLayout)findViewById(R.id.main_layout);
    view = getLayoutInflater().inflate(R.layout.fourby4, main,false);
    main.removeView(main);
    main.addView(view);
}
4

2 回答 2

1

如果是这样的话,也许你可以让你的布局不可见。这可以很容易地以编程方式完成:

layout.setVisibility(View.GONE);
于 2013-04-17T10:30:26.587 回答
0

根据@ookami.kb 的建议,我应该使用main.removeAllViews();而不是main.removeView(main);,这对我有帮助。

于 2013-04-18T07:09:47.537 回答