前些天发现了一个蛮有意思的人工智能学习网站,8个字形容一下"通俗易懂,风趣幽默",感觉非常有意思,忍不住分享一下给大家。
👉点击跳转到教程
一、布局xml文件代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical"
tools:context=".ObjectAnimator2Activity">
<ImageView
android:id="@+id/iv1"
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@mipmap/ic_launcher" />
<ImageView
android:id="@+id/iv2"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginVertical="10dp"
android:onClick="onClick"
android:src="@mipmap/ic_launcher" />
<ImageView
android:id="@+id/iv3"
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@mipmap/ic_launcher" />
</LinearLayout>
二、Activity代码如下
class ObjectAnimator2Activity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_object_animator2)
}
fun onClick(view: View) {
//这段代码的作用是在布局转换时使用延迟过渡效果。具体来说,TransitionManager.beginDelayedTransition(view.parent as ViewGroup)
// 方法会告知系统要对指定的 ViewGroup(视图组)进行布局变化时的过渡动画。这意味着在对该 ViewGroup 进行布局变化之后,系统将会自动应用指定的过渡效果。
//在使用这段代码之后,当你改变了 ViewGroup 中的子视图的位置、大小等属性后,系统会自动通过过渡动画平滑地展示这些变化,而不是突然地改变。
// 这可以为用户提供更加流畅和美观的界面变化效果,增强用户体验。
//总之,TransitionManager.beginDelayedTransition(view.parent as ViewGroup) 的作用是启动一个延迟过渡动画,以实现视图布局变化时的平滑过渡效果。
TransitionManager.beginDelayedTransition(view.parent as ViewGroup)
with(view.layoutParams as LinearLayout.LayoutParams) {
width *= 2
height *= 2
}
view.requestLayout()
}
}
效果如图所示