Activity 内容转换不起作用
Activity content transition doesn't work
我想开始 Activity
内容转换。但是内容转换不起作用。为什么以及如何修复它?
这是我的代码:
class PolishStartActivity : AbsActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
initContentTransition()
setContentView(R.layout.activity_polish_start)
}
private fun initContentTransition() {
window.apply {
requestFeature(Window.FEATURE_CONTENT_TRANSITIONS)
enterTransition = TransitionSet().apply {
addTransition(Slide(Gravity.TOP).addTarget(R.id.tvBooksTitle).addTarget(R.id.tvBooksDescription))
addTransition(Fade().addTarget(R.id.cvSearchBox))
// addTransition(Fade()) only this transition works fine
duration = 1000L
}
}
}
}
P.S。我从 ActivityOptions
.
开始我的 Activity
将 initContentTransition() 放在 super.onCreate();
之前
class PolishStartActivity : AbsActivity()
{
override fun onCreate(savedInstanceState: Bundle?)
{
initContentTransition()
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_polish_start)
}
..................
..................
}
经过多次尝试和实验,我找到了解决这个问题的方法。
在我的根 ViewGroup
(在我的例子中是 ConstraintLayout
)添加这一行:
android:transitionGroup="false"
是的!现在您可以为转换设置 targets
,它将起作用!
我想开始 Activity
内容转换。但是内容转换不起作用。为什么以及如何修复它?
这是我的代码:
class PolishStartActivity : AbsActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
initContentTransition()
setContentView(R.layout.activity_polish_start)
}
private fun initContentTransition() {
window.apply {
requestFeature(Window.FEATURE_CONTENT_TRANSITIONS)
enterTransition = TransitionSet().apply {
addTransition(Slide(Gravity.TOP).addTarget(R.id.tvBooksTitle).addTarget(R.id.tvBooksDescription))
addTransition(Fade().addTarget(R.id.cvSearchBox))
// addTransition(Fade()) only this transition works fine
duration = 1000L
}
}
}
}
P.S。我从 ActivityOptions
.
Activity
将 initContentTransition() 放在 super.onCreate();
之前 class PolishStartActivity : AbsActivity()
{
override fun onCreate(savedInstanceState: Bundle?)
{
initContentTransition()
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_polish_start)
}
..................
..................
}
经过多次尝试和实验,我找到了解决这个问题的方法。
在我的根 ViewGroup
(在我的例子中是 ConstraintLayout
)添加这一行:
android:transitionGroup="false"
是的!现在您可以为转换设置 targets
,它将起作用!