【问题标题】:Changing the content view dynamically动态更改内容视图
【发布时间】:2023-03-20 02:09:01
【问题描述】:

我是 android 新手,正在尝试弄清楚如何随意更改 contentView

现在,我在内容视图中有一个TableLayout,它是使用setContentView(TableLayout) 方法设置的。

但是,如果我想在同一个活动中更改此 contentview,我将如何调用它?我会简单地调用相同的方法,例如:setContentView(TableLayout2) 还是需要先清除屏幕?

保持在同一个活动中并更改屏幕上的内容的过程是什么?

谢谢!

【问题讨论】:

  • setContentView(yourLayout); 是你最后设置的内容视图。无需清除。

标签: android android-layout android-activity tablelayout


【解决方案1】:

这个answer 可能会有所帮助。

不,你不能多次调用它 容易地。你要么需要完全 删除所有视图,然后膨胀 新布局,或使用 ViewFlipper(或 FrameLayout) 之间切换 不同的观点。

【讨论】:

  • 我怎样才能删除所有的视图(当然是动态的)?只是为了澄清我的意图,当有人触发事件(在本例中为点击事件)时,我试图更改活动的视图。
  • 您可以在任何 ViewGroup(包括 TableLayout)上调用 removeAllViews(),然后向其中添加新视图。以我的经验,如果你经常尝试这样做,这会变得相当慢。
  • 如果我这样做,我可以重新使用(因为缺乏更好的术语)setContentView(tableLayout)?即
  • 您将重用原始 tableLayout,添加新行。
  • 谢谢。是否可以调用 setContentView 然后 removeAllViews 然后再次调用 setContentView?
猜你喜欢
  • 1970-01-01
  • 2011-01-04
  • 1970-01-01
  • 1970-01-01
  • 2017-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多