我的应用程序应该在纵向时显示一个带有ListView和TextView的普通LinearLayout,但在横向时显示一个带有三个选项卡的SwipeView。只要电话的方向改变,布局就会改变。
我知道通常你只有两个布局文件,分别是portrait和lanndscape,但我觉得这在我的例子中是不够的。毕竟,Tab和Swipe功能需要的不仅仅是一个XML文件。在寻找我的问题的解决方案时,有人建议在onConfigurationChanged()方法中开始一个新的活动,但同时这被认为是导致各种问题的非常糟糕的做法。
现在,我考虑向TagActivity.java中添加一大堆if-else语句,总是检查当前的方向,并生成所需的任何内容。这是一个很好的方法吗?是否可以有多个onCreate()方法,每个方法对应一个方向?
任何意见都将非常感谢!
我用来实现TabActivity的教程来自androidhive:http://www.androidhive.info/2013/10/android-tab-layout-with-swipeable-views-1/
发布于 2014-08-18 23:28:20
我在最近的一个项目中做了类似的事情。我们最终使用了带有PagerSlidingTabStrip (https://github.com/astuetz/PagerSlidingTabStrip/issues/5)的视图分页程序。在纵向模式中,只在视图页面中显示一个片段并隐藏标签,而在横向模式中,则填充视图页面和标签。不确定这在你的特定情况下是否有效(看起来会),但值得深思。
https://stackoverflow.com/questions/25366825
复制相似问题