我正在创建一个具有Gallery
的应用程序,该Gallery
根据方向具有不同数量的视图。一般而言,一些宽图像是双页跨页的;因此,它们在横向上占用一个View
,但在纵向上则拆分为两个视图(每页一个)。
我有一个系统,它记住哪个“页面”被选中,并将其转换为可以发送到Gallery.setSelection(position)
的位置。我从Activity.onCreate()
调用此函数,使用Activity.onRetainNonConfigurationInstance()
将保存此信息的对象传递回应用程序。不幸的是,在onCreate
结束后,Gallery
似乎正在将自己重置为其先前的位置值。
我能抑制这一点吗?如果没有,我什么时候需要调用我的Gallery.setSelection(position)
方法?
发布于 2011-07-26 13:28:09
我解决了这个问题。
当方向改变时,Activity.onCreate()
会被调用,所有东西都会被放大。通过覆盖Activity.onResume()
并在super.onResume()之后使用所需的值调用Gallery.setSelection(position),可以获得正确的行为;据推测,在super.onResume()期间或在Activity.onCreate()和Activity.onResume()
之间,Gallery的选择被设置为其先前的值。
https://stackoverflow.com/questions/6819921
复制相似问题