Android ViewPager中的反向滑动方向

Android ViewPager中的反向滑动方向,android,android-studio,android-fragments,kotlin,android-viewpager,Android,Android Studio,Android Fragments,Kotlin,Android Viewpager,是否有任何可能的方法来更改从左到右滑动碎片? 我的碎片从右向左滑动,但我需要碎片从左向右滑动 寻呼机适配器.kt class pageradapter (fm: FragmentManager) : FragmentStatePagerAdapter(fm){ override fun getItem(position: Int): Fragment { when(position){ 0-> return fragment1() 1-> re

是否有任何可能的方法来更改从左到右滑动碎片? 我的碎片从右向左滑动,但我需要碎片从左向右滑动

寻呼机适配器.kt

class pageradapter (fm: FragmentManager) : FragmentStatePagerAdapter(fm){
override fun getItem(position: Int): Fragment {
    when(position){
        0-> return fragment1()
        1-> return fragment2()
        else-> return fragment3()
    }
}

override fun getCount(): Int {
    return 3
}
fragment1.kt//2和3的代码相同

class fragment1 : Fragment() {


override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
                          savedInstanceState: Bundle?): View? {
    // Inflate the layout for this fragment
    return inflater.inflate(R.layout.fragment1, container, false)
}
Main4Activity.kt

class Main4Activity : AppCompatActivity(){

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main4)

    val adapter = pageradapter(supportFragmentManager)
    val pager = findViewById<View>(R.id.pager) as ViewPager
    pager.adapter = adapter

}
class Main4Activity:AppCompatActivity(){
重写创建时的乐趣(savedInstanceState:Bundle?){
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main4)
val适配器=pageradapter(supportFragmentManager)
val pager=findViewById(R.id.pager)作为ViewPager
pager.adapter=适配器
}

您应该反转
片段
位置,如下所示:

在PagerAdapter.kt中

class pageradapter (fm: FragmentManager) : FragmentStatePagerAdapter(fm){
     override fun getItem(position: Int): Fragment {
         when(rotatePosition(position)) {
             0-> return fragment1()
             1-> return fragment2()
             else-> return fragment3()
         }
     }

    override fun getCount(): Int {
        return 3
    }

    private fun rotatePosition(position: Int): Int {
        return (getCount() - 1) - position
    }
}
在Main4活动中

class Main4Activity : AppCompatActivity(){

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main4)

        val adapter = pageradapter(supportFragmentManager)
        val pager = findViewById<View>(R.id.pager) as ViewPager
        pager.adapter = adapter
        // setting new start position
        pager.setCurrentItem(adapter.rotatePosition(0), false);

}
class Main4Activity:AppCompatActivity(){
重写创建时的乐趣(savedInstanceState:Bundle?){
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main4)
val适配器=pageradapter(supportFragmentManager)
val pager=findViewById(R.id.pager)作为ViewPager
pager.adapter=适配器
//设置新的起始位置
pager.setCurrentItem(适配器旋转位置(0),false);
}

您可以使用

或者

如果需要替换片段时的动画,可以在
FragmentTransaction