在 activity 启动时更改 viewpager 2 中的片段,而不是在方向更改时

Change fragment in viewpager 2 on activity launch and not on orientation change

我正在创建一个使用 viewpager2 的应用程序。当 activity 启动时,viewpager 页面会根据之前 activity 中的一些数据进行设置。我用

viewpager2.setcurrentItem(index , true)

在 oncreate 方法中。

问题

假设用户打开viewpagerActivity。显示索引为 2 的 veiwpager。 现在用户滑动到索引 3。 现在用户执行方向更改。 用户再次被带到索引 2。

有人可以帮我解决这个问题吗?

如果您在 onCreate 中执行此操作,请使用捆绑包检查它是否是 null,如果 yes 是全新启动,否则方向会发生变化。

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    if(savedInstanceState == null){
        viewpager2.setcurrentItem(index , true)
    }
}