zoukankan      html  css  js  c++  java
  • 缩放动画 ScaleAnimation

    缩放动画可以演示一个视图在宽高上的渐变效果。它的主要属性有:

    fromXScale动画起始时 X坐标上的伸缩倍数 0.0表示收缩到没有

    fromYScale动画起始时 Y坐标上的伸缩倍数

    toXScale动画终止时 X坐标上的伸缩倍数 2.0表示扩大2

    toYScale动画终止时 Y坐标上的伸缩倍数

    pivotX X轴上的伸缩参考点

    pivotY Y轴上的伸缩参考点 50%代表XY方向坐标上的中点位置


    scale.xml

    <?xml version="1.0" encoding="utf-8"?>
    <set xmlns:android="http://schemas.android.com/apk/res/android">
    <scale
        android:fromXScale="0"
        android:fromYScale="0"
        android:toXScale="2.0"
        android:toYScale="2.0"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="2000"
        />
    </set>
    
    
    activity_main.xml
    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="com.example.deligence.demo5.MainActivity">
    
        <ImageView
            android:id="@+id/img"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/img_bird"
            android:layout_centerInParent="true"
            />
        <Button
            android:id="@+id/btn_start"
            android:text="播放动画XML"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:onClick="onClick"
            />
        <Button
            android:id="@+id/btn_start1"
            android:layout_toRightOf="@id/btn_start"
            android:text="播放动画Java"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:onClick="onClickJava"
            />
    
    </RelativeLayout>
    
    MainActivity.java
    package com.example.deligence.demo5;
    
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.view.animation.Animation;
    import android.view.animation.AnimationUtils;
    import android.view.animation.ScaleAnimation;
    import android.widget.ImageView;
    
    public class MainActivity extends AppCompatActivity {
    
        ImageView view;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            view = (ImageView) findViewById(R.id.img);
        }
        public void onClick(View v){
            Animation animation = AnimationUtils.loadAnimation(this,R.anim.scale);
            view.clearAnimation();
            view.startAnimation(animation);
    
        }
        public void onClickJava(View v){
            Animation animation;
            animation = new ScaleAnimation(0.0f,2.0f,0.0f,2.0f, Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);
            animation.setDuration(2000);
            animation.setRepeatCount(3);
    
            view.clearAnimation();
            view.startAnimation(animation);
        }
    
    }

  • 相关阅读:
    ASP.NET Core基于SignalR实现消息推送实战演练
    corn常用表达式
    muzejs 基于webassembly 的高性能数据可视化库
    xk6 构建原理说明
    集群、分布式、负载均衡区别
    Docker深入浅出系列 | Swarm多节点实战
    You Can’t Sacrifice Partition Tolerance
    Cookies are deleted when I close the browser?
    Using more than one index per table is dangerous?
    Multiple Indexes vs Multi-Column Indexes
  • 原文地址:https://www.cnblogs.com/CCCrunner/p/11782059.html
Copyright © 2011-2022 走看看