Android更改setContentView

时间:2012-01-01 17:31:52

标签: android android-layout

我想在我的活动中动态设置contentView。 因为有一次我使用xml作为contentView,但是在anothertime我使用自定义视图作为contentView。

但是我如何更改contentView?

我读到ViewFlipper可以执行此操作,但viewFlipper是在xml文件中实现的。在此ViewFlipper中,您可以添加不同的视图。

但我一开始并不知道它们,所以我不能在我的xml文件中写下它们。 你有什么想法吗?

谢谢

1 个答案:

答案 0 :(得分:9)

您可以随时致电setContentView * ,而不只是onCreate。只需在单独的XML文件中定义所需的所有视图,并在切换时传递相关的id。如果要在代码中动态定义新布局,请执行此操作并调用setContentView并传递新布局的根视图。

* 从技术上讲,只要在事件线程上执行,就可以调用setContentView。否则你需要使用Handler来调用它。