·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> app软件开发 >> Android开发 >> Android应用中制作选中后图标变大浮动效果的代码分享

Android应用中制作选中后图标变大浮动效果的代码分享

作者:佚名      Android开发编辑:admin      更新时间:2022-07-23

 最近在玩3g体育门户客户端的时候,看到这样个效果: 轻触赛事图标,会有一个图标变大浮出的效果.,蛮有意思的.于是就把仿照它做了一个.
  这个是原图:              

2016223152356064.jpg (480×800)

实际上是给图标的触摸事件中添加了一个缩放的动画,代码如下.

package com.test; 
 
import android.app.Activity; 
import android.os.Bundle; 
import android.view.MotionEvent; 
import android.view.View; 
import android.view.View.OnTouchListener; 
import android.view.animation.Animation; 
import android.view.animation.ScaleAnimation; 
import android.widget.Button; 
 
public class AnimationButtonActivity extends Activity { 
  @Override 
  public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    final Button test = (Button) findViewById(R.id.test_bt); 
     
     
//    float f1 = 1.0F; 
//    float f2 = 1.3F; 
//    int j = 1; 
//    float f3 = 0.5F; 
     
    //参数说明: 
    //float fromX 动画起始时 X坐标上的伸缩尺寸 
    //float toX 动画结束时 X坐标上的伸缩尺寸  
    //float fromY 动画起始时Y坐标上的伸缩尺寸  
    //float toY 动画结束时Y坐标上的伸缩尺寸  
    //int pivotXType 动画在X轴相对于物件位置类型  
    //float pivotXValue 动画相对于物件的X坐标的开始位置  
    //int pivotYType 动画在Y轴相对于物件位置类型  
    //float pivotYValue 动画相对于物件的Y坐标的开始位置 
 
    final Animation logoAnimation = new ScaleAnimation(1.0F, 1.3F, 1.0F, 1.3F, 1, 0.5F, 1, 0.5F); 
    //设置动画间隔 
    logoAnimation.setDuration(100L); 
     
    test.setOnTouchListener(new OnTouchListener() { 
       
      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
                //开始动画  
                test.startAnimation(logoAnimation); 
        return false; 
      } 
    }); 
  } 
}