欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android使用RotateImageView 旋轉(zhuǎn)ImageView

 更新時(shí)間:2016年01月11日 11:03:39   作者:DerDeath  
這篇文章主要介紹了Android使用RotateImageView 旋轉(zhuǎn)ImageView 的相關(guān)資料,需要的朋友可以參考下

廢話不多說了,直接給大家代碼。

具體代碼如下所示:

package com.droidhen.game.layout;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Bitmap.Config;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.PaintFlagsDrawFilter;
import android.graphics.Rect;
import android.widget.ImageView;
public class RotateImageView extends ImageView {
/**旋轉(zhuǎn)角度**/
private float _degree;
/**旋轉(zhuǎn)中心**/
private float _x;
private float _y;
/** 背景和前景資源 */
private Bitmap _bgRes, _fgRes;
/** 數(shù)字圖片資源 */
private Bitmap _nums;
private Bitmap _buffer;
private Canvas _canvas;
private int start = ;
private int unitx = ;
public RotateImageView(Context context) {
super(context);
_degree = f;
_x = ;
_y = ;
_nums = BitmapFactory.decodeResource(getResources(), R.drawable.level_num);
}
public void setResIds(int bgResId, int fgResId) {
_bgRes = BitmapFactory.decodeResource(getResources(), bgResId);
_fgRes = BitmapFactory.decodeResource(getResources(), fgResId);
}
public void setLevel(int level) {
String _level = String.valueOf(level);
_buffer = Bitmap.createBitmap( _level.length()*(_nums.getWidth()/), _nums.getHeight(), Config.ARGB_);
unitx = _nums.getWidth()/;
_canvas = new Canvas(_buffer);
for(int i = ; i <= _level.length()-; i++){
Rect src = new Rect((_level.charAt(i) - '')*unitx, , (_level.charAt(i) - '' + )*unitx, _nums.getHeight());
Rect dst = new Rect( i*unitx, , (i + )*unitx, _nums.getHeight());
_canvas.drawBitmap(_nums, src, dst, null);
}
}
public void setLevel(int level, int Resid) {
_nums = BitmapFactory.decodeResource(getResources(), Resid);
String _level = String.valueOf(level);
_buffer = Bitmap.createBitmap( _level.length()*(_nums.getWidth()/), _nums.getHeight(), Config.ARGB_);
unitx = _nums.getWidth()/;
_canvas = new Canvas(_buffer);
for(int i = ; i <= _level.length()-; i++){
Rect src = new Rect((_level.charAt(i) - '')*unitx, , (_level.charAt(i) - '' + )*unitx, _nums.getHeight());
Rect dst = new Rect( i*unitx, , (i + )*unitx, _nums.getHeight());
_canvas.drawBitmap(_nums, src, dst, null);
}
}
public void setDegree(float degree) {
_degree = degree;
}
public void setDegree(float degree, float x, float y) {
_degree = degree;
_x = x;
_y = y;
}
public float getDegree() {
return _degree;
}
public float getRotateX() {
return _x;
}
public float getRotateY() {
return _y;
}
@Override
public void draw(Canvas canvas) {
canvas.save();
canvas.setDrawFilter(new PaintFlagsDrawFilter(, Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG)); 
canvas.rotate(_degree, _x, _y);
canvas.drawBitmap(_bgRes, , , null);
canvas.drawBitmap(_fgRes, , , null);
canvas.drawBitmap(_buffer, (_bgRes.getWidth() - _buffer.getWidth())/f, , null);
canvas.restore();
}
}

以上代碼是關(guān)于Android RotateImageView 可旋轉(zhuǎn)ImageView 的全部內(nèi)容,希望對(duì)大家有所幫助。

相關(guān)文章

  • Android如何在App中啟動(dòng)系統(tǒng)鬧鐘

    Android如何在App中啟動(dòng)系統(tǒng)鬧鐘

    這篇文章主要為大家詳細(xì)介紹了Android如何在App中啟動(dòng)系統(tǒng)鬧鐘,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Android實(shí)現(xiàn)底部導(dǎo)航欄效果

    Android實(shí)現(xiàn)底部導(dǎo)航欄效果

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)底部導(dǎo)航欄效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 解決java.lang.NoClassDefFoundError: android.support.v4.animation.AnimatorCompatHelper問題

    解決java.lang.NoClassDefFoundError: android.support.v4.animati

    這篇文章主要介紹了解決Android Studio出現(xiàn)java.lang.NoClassDefFoundError: android.support.v4.animation.AnimatorCompatHelper的問題,感興趣的朋友一起看看吧
    2021-08-08
  • flutter 自定義websocket路由的實(shí)現(xiàn)

    flutter 自定義websocket路由的實(shí)現(xiàn)

    這篇文章主要介紹了flutter 自定義websocket路由的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 快速解決Android平臺(tái)移植ffmpeg的一些問題

    快速解決Android平臺(tái)移植ffmpeg的一些問題

    模仿Android的MediaPlayer類實(shí)現(xiàn)了ffmpeg的播放接口,如setDataSource(),setDisplay(),start(), stop(),pause()等,缺點(diǎn)是沒有實(shí)現(xiàn)seek功能
    2013-11-11
  • Toast類避免顯示時(shí)間疊加的方法

    Toast類避免顯示時(shí)間疊加的方法

    這篇文章主要為大家詳細(xì)介紹了Toast類避免顯示時(shí)間疊加的方法,線程中可用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • 解決flutter 錯(cuò)誤: 程序包androidx.lifecycle不存在問題

    解決flutter 錯(cuò)誤: 程序包androidx.lifecycle不存在問題

    這篇文章主要介紹了解決flutter 錯(cuò)誤: 程序包androidx.lifecycle不存在問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 在Android源碼中編譯出指定jar包的操作

    在Android源碼中編譯出指定jar包的操作

    這篇文章主要介紹了在Android源碼中編譯出指定jar包的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Android 實(shí)現(xiàn)懸浮窗功能

    Android 實(shí)現(xiàn)懸浮窗功能

    這篇文章主要介紹了Android 實(shí)現(xiàn)懸浮窗功能,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • 嗶哩嗶哩Android項(xiàng)目編譯優(yōu)化

    嗶哩嗶哩Android項(xiàng)目編譯優(yōu)化

    這篇文章主要為大家介紹了嗶哩嗶哩Android項(xiàng)目編譯優(yōu)化詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06

最新評(píng)論