动态更改内容视图

3
我是新手安卓开发者,正在尝试如何随意更改contentView。当前,我在内容视图中有一个TableLayout,使用setContentView(TableLayout)方法设置。然而,如果我想在同一活动中更改这个contentview,我该如何调用呢?我只需要像这样调用相同的方法:setContentView(TableLayout2),还是需要先清除屏幕?在同一活动中保持并更改屏幕上的内容的程序是什么?谢谢!

setContentView(yourLayout); 是设置你最后设置的 contentView。无需清除。 - Pratik Butani
1个回答

4

这个答案可能会有帮助。

不,你不能轻松地多次调用它。你要么需要完全删除所有视图然后填充新的布局,要么使用ViewFlipper(或FrameLayout)在不同的视图之间切换。


我该如何删除所有视图(当然是动态的)?只是为了澄清我的意图,当有人触发事件(在这种情况下是单击事件)时,我正在尝试更改活动的视图。 - locoboy
你可以在任何ViewGroup(包括TableLayout)上调用removeAllViews(),然后添加新的视图。但是根据我的经验,如果你尝试做得太频繁,这个过程会变得相当缓慢。 - Matthew
如果我这样做,我可以重复使用(缺乏更好的术语)setContentView(tableLayout)吗?即 - locoboy
您将重复使用原始的tableLayout,并添加新行。 - Matthew
谢谢。是否可以先调用setContentView,然后删除所有视图,再次调用setContentView? - locoboy
我不这么认为,考虑到我提供的答案。 - Matthew

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接