如何更改场景过渡动画中的TextView大小?
请帮助我进行场景过渡动画设置。如何更改场景过渡动画中的TextView大小?
这是我的想法:
当我点击TextView
(FirstActivity)我想与视图大小变化和移动分享这个TextView
到SecondActivity。
当我打开(或关闭)SecondActivity我的TextView
移动(箭头#1或#2)但没有大小改变。这看起来很难看。
这是我的代码:
主题(我用这个主题两个FirstActivity和SecondActivity):
<style name="AppTheme.MaterialAnimation.SharedViews"> <item name="android:windowContentTransitions">true</item>
<item name="android:windowSharedElementEnterTransition">@transition/enter_shared_ui</item>
<item name="android:windowSharedElementExitTransition">@transition/exit_shared_ui</item>
</style>
enter_shared_ui的.xml:
<?xml version="1.0" encoding="utf-8"?> <transitionSet xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="4000"
android:interpolator="@android:interpolator/decelerate_cubic">
<changeBounds />
</transitionSet>
exit_sh ared_ui .XML
<?xml version="1.0" encoding="utf-8"?> <transitionSet xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="4000"
android:interpolator="@android:interpolator/decelerate_cubic">
<changeBounds />
</transitionSet>
如何改变TextView的大小改变我的场景过渡动画?
UPDATE:
此代码为启动SecondActivity:
private fun openSecondScreen() { val intent = Intent(this, SharedUIFinishActivity::class.java)
... // add another views to Pair
val thirdPair = Pair(tvSharedUISelect as View, getString(R.string.shared_ui_text))
val options = ActivityOptions.makeSceneTransitionAnimation(this,
... thirdPair)
startActivity(intent, options.toBundle())
}
并为我用的是相同的过渡名字都TextView
的。
回答:
要使SharedElementTransition
正常工作,必须将相同的转换名称设置为Activity1和Activity2中的TextView。
请确保名称相同,以便框架可以知道转换发生的过程。
<TextView ...
android:transitionName="my_transition"/>
在活动1启动活性2
startActivity(intent, ActivityOptions.makeSceneTransitionAnimation(getActivity(), textView, textView.getTransitionName()).toBundle());
以上是 如何更改场景过渡动画中的TextView大小? 的全部内容, 来源链接: utcz.com/qa/261436.html