我根据存储在数据库中的值填充了一些Spinners。当我垂直拿着手机时,它们工作得很好,但是当我开始活动时(当我在风景中观看时)我将它们侧向握住时,它们最终都选择了索引0。在我的清单中,我将活动设置为始终以纵向显示,无论手机的方向如何,都使用android:screenOrientation="portrait"
。
答案后修改:< snip>
我为Spinner使用自己的BaseAdapter子类,并为其项目使用我自己的自定义类。我尝试在我的自定义项目中覆盖.equals()
和.hashCode()
,但这没有帮助。我还在Spinner的onRestoreInstanceState()
方法中设置了一个断点,看看它是否以某种方式涉及,但它没有被调用。
答案后修改:找到解决方案后,我认为最好删除我之前提供的所有细节。它绝不会帮助将来可能访问此页面的任何人。请参阅下面我自己问题的答案。
答案 0 :(得分:0)
与anthropomo讨论让我记得我在自定义Adapter类中做了一些异步工作,这似乎是罪魁祸首。这是一场竞争。我不知道为什么它在持拍手机时始终正常工作,并且在风景中始终失败,但是经验教训。永远记住你做异步事情的地方,先检查一下。