定时片段过渡-Android

时间:2018-07-23 18:47:49

标签: android android-fragments animation kotlin transitions

我正在构建一个Android应用程序,并且在一个部分中,列出了我制作的一系列卡片碎片,并将其加载到屏幕中。这些片段使用片段管理器过渡从右边输入,但是它们一次都这样做。我想让他们按顺序输入,因为感觉更自然,但我不知道如何输入。代码在下面发布。

fun updateResultsActivity() {
    // Add fragments to container
    for (i in 0 until placesList.size) {
        fragmentManager.beginTransaction().setCustomAnimations(R.animator.enter_from_right, R.animator.exit_to_left)
                .add(R.id.layout_container, fragmentList[i]).commit()
    }

    updateShowMoreButton()
}

我尝试添加sleep()行,使该函数仅添加一个片段并将所述函数放入循环,而其他似乎没有任何作用。欢迎任何建议,所以在此先谢谢您!

1 个答案:

答案 0 :(得分:1)

我不确定这是否是您期望的行为,但是您可以在初始化UI组件时创建与主循环程序关联的Handler,然后可以发布带有片段事务的可延迟运行。

val handler = Handler(Looper.getMainLooper())

for (i in 0 until placesList.size) {
    handler.postDelayed({
        fragmentManager.beginTransaction().setCustomAnimations(R.animator.enter_from_right, R.animator.exit_to_left)
            .add(R.id.layout_container, fragmentList[i]).commit()
    }, 1000*i)
}