如何在活动中的布局之间切换并根据当前使用的布局填充字段?
例如,如果视图中存在加载视图的逻辑:
if(category == 1){
setContentView(R.layout.layout1);
}else{
setContentView(R.layout.layout2);
TextView title = (TextView) findViewById(R.id.titleTV);
title.setText("myTitle");
}
如果调用else代码,则视图永远不会将标题TextView设置为String。
如何在两个视图之间有条件地完成?
答案 0 :(得分:2)
另一种选择是使用Fragment
。与dimitris提到的选择相比,优势在于每个片段都有自己的生命周期,因此您可以将与每个视图相关的所有代码委托给其片段,并保持主要活动的清洁。
为此,只需在Activity中使用FrameLayout作为片段的占位符。片段可以使用侦听器模式与活动进行通信。
答案 1 :(得分:1)
如果您想要翻阅差异Views
,您可以检查各种可能性,例如:
ViewPager
通过兼容性库(http://android-developers.blogspot.com/2011/08/horizontal-view-swiping-with-viewpager.html)ViewFlipper
或ViewSwitcher
(http://developer.android.com/reference/android/widget/ViewFlipper.html,http://developer.android.com/reference/android/widget/ViewSwitcher.html)FrameLayout
(http://developer.android.com/reference/android/widget/FrameLayout.html)希望现在有所帮助!如果你需要任何具体的东西,请拍摄它!
答案 2 :(得分:0)
参考: