Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 当通过按钮调用viewPager.setCurrentItem时,CreateFragment调用了两次_Android - Fatal编程技术网

Android 当通过按钮调用viewPager.setCurrentItem时,CreateFragment调用了两次

Android 当通过按钮调用viewPager.setCurrentItem时,CreateFragment调用了两次,android,Android,使用viewPager2.setCurrentItem时(viewPager2.getCurrentItem()+1,true);要通过按钮更改当前项,FragmentStateAdapter类中的createFragment运行两次(currentItem+1和currentItem+2)这是正常的 ViewPager将加载两个片段。一个将显示的片段和新片段旁边的片段。这样,当滚动到下一页时,它可以正确地显示这两个片段。但是当我通过触摸滚动它时,不会运行两次,因为滚动时,会显示下一个项目(已加

使用viewPager2.setCurrentItem时(viewPager2.getCurrentItem()+1,true);要通过按钮更改当前项,FragmentStateAdapter类中的createFragment运行两次(currentItem+1和currentItem+2)

这是正常的


ViewPager
将加载两个片段。一个将显示的片段和新片段旁边的片段。这样,当滚动到下一页时,它可以正确地显示这两个片段。

但是当我通过触摸滚动它时,不会运行两次,因为滚动时,会显示下一个项目(已加载)。然后,它只需要加载它旁边的项目。感谢您的回答,我在我的应用程序中使用viewpager2作为向导,一次性将数据发送到服务器,然后从服务器接收其他数据库。当我使用setcurrentItem进行更改页面的第二个片段调用时,上一个片段尚未将数据发送到服务器。touch createFragment不会运行两次并正常工作。但如果启用了选项,它将复制。这是个问题。