2011-09-19 45 views
0

我有一个ActivityFragment,其中横向和纵向模式有不同的布局xml文件。处理具有不同布局的片段的纵向和横向片段活动

我尝试使用这样的:

public void onConfigurationChanged(Configuration newConfig) { 
    super.onConfigurationChanged(newConfig); 
    setContentView(R.layout.hdmain); 
} 

hdmain.xml放在layout-landlayout-port文件夹。然后,我满足片段生命周期的问题:

java.lang.IllegalArgumentException: Binary XML file line #9: Duplicate id 0x7f0c0019, tag null, or parent id 0xffffffff with another fragment for org.sais.hdmeridian.HDMainActivity$TabFragment 

它看起来像碎片依然存在,因为我改变了活动的布局,新的片段被创建,然后复制。

什么是避免这种情况的聪明方法?或者Android有更好的解决方案来处理这个问题?

回答

0

您是否尝试将标记android:configChanges="orientation"添加到清单中的活动中。 这可以防止onCreate在设备的每一圈执行,并为我解决大部分重复错误。

+0

如果我不那么'onConfigurationChanged()'将是没有意义的。我当然做了。 –