我正在制作一个有4个主要视图的应用程序。我希望它们都停留在顶部的列表菜单上(目前是这样的)。
使用Fragments,我有能力改变视图而不需要实际到达另一个活动页面,但由于我的视图之一有ViewPager,在这么做时它完全不起作用(当我首次加载视图时,内容是好的,但第二次时,ViewPager上的视图消失了,并且只会在我向左滑动2个位置后再重新出现)(见图片,显示了第一次加载时间和第二次)。
请注意,ViewPager并不是为了显示菜单项而存在的,事实上它是当前菜单项的Fragment的一部分(在这种情况下,“Simula'c〜ao”)。
我的问题是:这是一个已知的问题吗?是否有简单的方法来解决它,或者我必须以另一种方式来做?我已经在互联网上搜寻过这个问题,但是对我都没什么作用(无效,设置on
我已经查看了ViewPager类,一切似乎都很正常,我已经修改了它,以便每次我呈现视图时,它都会强制渲染所有内容,但是这样也没有用。
我已经尝试设置GONE和VISIBLE的可见性。
我已经尝试分离和附加适配器。
尝试缓存视图并返回缓存版本。
有一件事似乎起作用:更改手机的方向。那样是有效的。
试过很多事情,我甚至都记不住了……我对此有点生气,因为过去的24小时完全没有帮助我解决这个“谜题”。我希望你们中的一些人可以帮忙。
我的代码: https://www.dropbox.com/s/u4mlxr3k6ta9yrm/MainActivity.java https://www.dropbox.com/s/2dqfnzjs2wl89hj/SimulationFragment.java
使用Fragments,我有能力改变视图而不需要实际到达另一个活动页面,但由于我的视图之一有ViewPager,在这么做时它完全不起作用(当我首次加载视图时,内容是好的,但第二次时,ViewPager上的视图消失了,并且只会在我向左滑动2个位置后再重新出现)(见图片,显示了第一次加载时间和第二次)。
请注意,ViewPager并不是为了显示菜单项而存在的,事实上它是当前菜单项的Fragment的一部分(在这种情况下,“Simula'c〜ao”)。
我的问题是:这是一个已知的问题吗?是否有简单的方法来解决它,或者我必须以另一种方式来做?我已经在互联网上搜寻过这个问题,但是对我都没什么作用(无效,设置on
getItemPosition
以返回POSITION_NONE
等等)。我已经查看了ViewPager类,一切似乎都很正常,我已经修改了它,以便每次我呈现视图时,它都会强制渲染所有内容,但是这样也没有用。
我已经尝试设置GONE和VISIBLE的可见性。
我已经尝试分离和附加适配器。
尝试缓存视图并返回缓存版本。
有一件事似乎起作用:更改手机的方向。那样是有效的。
试过很多事情,我甚至都记不住了……我对此有点生气,因为过去的24小时完全没有帮助我解决这个“谜题”。我希望你们中的一些人可以帮忙。
我的代码: https://www.dropbox.com/s/u4mlxr3k6ta9yrm/MainActivity.java https://www.dropbox.com/s/2dqfnzjs2wl89hj/SimulationFragment.java
Views: https://www.dropbox.com/s/d6ruc1zjovqu6ob/activity_main.xml https://www.dropbox.com/s/lp1iea13klr77iq/activity_simulation.xml https://www.dropbox.com/s/1mkl3jqmo7g4wh8/item_simulation.xml