Android实现可旋转的ImageView

直接将RefreshProgress添加进xml中当做ImageView就能使用

package com.example.administrator.superrefresh;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Matrix;
import android.graphics.drawable.BitmapDrawable;
import android.util.AttributeSet;
import android.view.animation.Animation;
import android.view.animation.LinearInterpolator;
import android.view.animation.RotateAnimation;
import android.widget.ImageView;

/**
 * Created by SLY on 2015/9/6.
 */
public class RefreshProgress extends ImageView {

    private Matrix m = new Matrix();
    //匀速加速器
    private LinearInterpolator lir = new LinearInterpolator();
    public RefreshProgress(Context context) {
        super(context);
    }

    public RefreshProgress(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public void changeAnimation(int num){
        m.reset();
        //
        Bitmap bitmap = ((BitmapDrawable) getResources().getDrawable(R.drawable.loading_rotate))
                .getBitmap();
        this.setImageBitmap(bitmap); //显示图像
        //
        m.setRotate(num);
        Bitmap newBitmap = Bitmap.createBitmap(bitmap,0,0,bitmap.getWidth(),bitmap.getHeight(),m,true);
        BitmapDrawable bd = new BitmapDrawable(newBitmap);
        this.setImageDrawable(bd); //显示新的图像

    }

    //控制动画
    public void Animation(){
        RotateAnimation rotate = new RotateAnimation(0, 720, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
        //默认为0,为-1时一直循环动画
        rotate.setRepeatCount(-1);
        //添加匀速加速器
        rotate.setInterpolator(lir);
        rotate.setDuration(2000);
        rotate.setFillAfter(true);
        this.startAnimation(rotate);
    }

}
时间: 2024-08-10 23:17:27

Android实现可旋转的ImageView的相关文章

Android实习札记(10)---ImageView的src属性 VS blackground属性

Android实习札记(10)---ImageView的src属性 VS blackground属性                                                                              转载请注明出处:coder-pig 问题分析 相信大家对于ImageView图片组件并不陌生吧,见名知意,就是用来显示图片的咯! 而显示图片的话可以通过src属性,又或者blackground属性来进行设置! 这些大家都知道,但是有没有去纠结下

【转】 ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType)

1 这里我们重点理解ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType).android:scaleType是控制图片如何resized/moved来匹对ImageView的size.ImageView.ScaleType / android:scaleType值的意义区别: 2 3 CENTER /center 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示

Android 利用TimerTask实现ImageView图片播放效果

在项目开发中,往往 要用到图片播放的效果,今天就用TimerTask和ImageView是实现简单的图片播放效果. 其中,TimerTask和Timer结合一起使用,主要是利用TimerTask的迭代延时等时间段处理事件的机制. 具体实例如下: 1.layout xml代码 <span style="font-family:Microsoft YaHei;font-size:18px;"><LinearLayout xmlns:android="http:/

ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType)

1 imageView.setScaleType(ImageView.ScaleType.FIT_XY ); 1 这里我们重点理解ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType).android:scaleType是控制图片如何resized/moved来匹对ImageView的size.ImageView.ScaleType / android:scaleType值的意义区别: 2 3 CENT

Android控件之ImageView(显示图片的控件)

一.ImageView属性: android:src = "@drawable/ic_launcher"——ImageView的内容图像(可以和android:background = "#00000"同时使用) android:background = "@drawable/ic_launcher"——ImageView的背景图像 android:background = "#00000"——ImageView的RGB颜色

android学习笔记之ImageView的scaleType属性

我们知道,ImageView有一个属性叫做scaleType,它的取值一共同拥有八种,各自是:matrix,fitXY.fitStart,fitCenter.fitEnd,center,centerCrop.centerInside. 那我们以下一起来看看这八种取值分别代表什么意思. 我用两张图片来做demo,这两张图片的分辨率一大一小,图片分别叫做big和small.原图例如以下: big: small: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQ

【Android】自定义圆形ImageView(圆形头像 可指定大小)

最近在仿手Q的UI,这里面经常要用到的就是圆形头像,看到 在android中画圆形图片的几种办法 这篇文章,了解了制作这种头像的原理.不过里面提供的方法还有一个不足的地方就是不能根据实际需求改变图片的大小,也就是说提供的原图是大尺寸的,转换之后的图片也是大尺寸的,这显然不符合我们实际项目中的需求.于是我对里面介绍的第一种方法做了一番改进,使其能直接在XML中指定图片的大小. 大体步骤 将原图居中裁剪成正方形 根据指定的宽度对正方形进行缩放 裁剪成圆形 效果 代码实现 package com.de

Android学习笔记_S01_E04 ImageView及其子类(一)

一.基本定义 ImageView继承自View组件,它的主要功能是用于显示任何Drawable对象,派生出了ImageButton.ZoomButton等组件. 二.属性和方法 1.ImageView的xml属性和方法 xml属性 相关方法 说明 android:adjustViewBounds setAdjustViewBounds(boolean) 设置该属性为真可以在 ImageView 调整边界时保持图片的纵横比例.(需要与maxWidth.MaxHeight一起使用,否则单独使用没有效

Android开发教程--设置ImageView图片的显示比例

为适应不同屏幕的手机,ImageView图片的显示比例,可以使用android:scaleType属性来处理,处理方式的有以下几种: 1.在xml配置中使用:android:scaleType="centerCrop" 2.在代码中使用:   imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); ScaleType的值分别代表的意义:ImageView是Android中的基础图片显示控件,该控件有个重要的属性是ScaleTyp