【发布时间】:2013-05-28 21:28:58
【问题描述】:
来自Android Google group的交叉发帖
我今天早些时候遇到了这个问题: https://code.google.com/p/android/issues/detail?id=55106
问题是:
- LinearLayout 有子级
- 每个孩子都是从同一个 XML 布局文件中扩展而来的
- 一个子元素具有一些 ID 的嵌套元素。
- ID 用于调用 findViewById(ID) 设置一些值
- 一切都在启动时正确显示,但在方向改变后 LinearLayout 的每个子项都显示最后一个数据项的值
- 从子 XML 布局文件中删除 ID 后,一切都会开始正常工作
该错误附有演示该问题的示例项目。
只是想问是否有人遇到过同样的问题并知道解决方法?
提前谢谢你。
编辑:
LinearLayout 的情况非常不稳定。我终于完成了这个项目 - 请参阅第二个附加项目 https://code.google.com/p/android/issues/detail?id=55106
如果您转到 item_main.xml 并将 android:textIsSelectable 从 false 更改为 true,则会出现错误。 保留 android:textIsSelectable="true",但删除 android:id="@+id/text" - 错误再次消失
我尝试使用此 LinearLayout 的主要原因是因为我想遵循您的布局动画示例。 http://developer.android.com/training/animation/layout.html
但是,LinearLayout 和方向变化的情况似乎很不稳定,我需要回到工作中的 ListView+Adapter 方法,并弄清楚在向适配器添加项目和重新验证列表时如何做类似的布局动画。
【问题讨论】:
-
见stackoverflow.com/questions/14263665/…。您的问题很可能与保存和恢复活动状态有关。考虑实现 onSaveInstanceState() 和 onRestoreInstanceState()
-
看来不是这样。我正在处理的更大的项目实现了 onSaveInstanceState()。根据我对片段的发现,它看起来像一个框架错误。 code.google.com/p/android/issues/detail?id=55106 此外,我还发现,如果我从 Google 获取基于活动的布局动画示例并将 TextView 的 ID 从 @android:id/text1 更改为 @+id/text1,它们的示例也会停止工作。 LinearLayout、textIsSelectable 和 id 组合起来真的很不稳定。
标签: android