国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android實現Bitmap位圖旋轉效果

2019-10-23 18:31:15
字體:
來源:轉載
供稿:網友

位圖的旋轉也可以借助Matrix或者Canvas來實現。

通過postRotate方法設置旋轉角度,然后用createBitmap方法創建一個經過旋轉處理的Bitmap對象,最后用drawBitmap方法繪制到屏幕上,于是就實現了旋轉操作。

下面例子中把原位圖和經旋轉處理的位圖都繪制到屏幕上,目的是做一個對比。

Android,Bitmap,位圖旋轉

package xiaosi.bitmap;  import android.app.Activity; import android.os.Bundle;  public class mianActivity extends Activity {   private BitmapView bitmapView = null;  @Override  protected void onCreate(Bundle savedInstanceState)  {   super.onCreate(savedInstanceState);   bitmapView = new BitmapView(this);   setContentView(bitmapView);  } } 

BitmapView.Java

package xiaosi.bitmap;  import android.content.Context; import android.content.res.Resources; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Matrix; import android.view.View;  public class BitmapView extends View {  public BitmapView(Context context)  {   super(context);  }   //重寫onDraw方法  public void onDraw(Canvas canvas)  {   // 獲取資源文件的引用res   Resources res = getResources();   // 獲取圖形資源文件   Bitmap bmp = BitmapFactory.decodeResource(res, R.drawable.h);   // 設置canvas畫布背景為白色   canvas.drawColor(Color.BLACK);   // 在畫布上繪制縮放之前的位圖,以做對比   //屏幕上的位置坐標是0,0   canvas.drawBitmap(bmp, 0, 0, null);   // 定義矩陣對象   Matrix matrix = new Matrix();   // 縮放原圖   matrix.postScale(1f, 1f);   // 向左旋轉45度,參數為正則向右旋轉   matrix.postRotate(-45);   //bmp.getWidth(), 500分別表示重繪后的位圖寬高   Bitmap dstbmp = Bitmap.createBitmap(bmp, 0, 0, bmp.getWidth(), 500,     matrix, true);   // 在畫布上繪制旋轉后的位圖   //放在坐標為0,200的位置   canvas.drawBitmap(dstbmp, 0, 200, null);  } } 

 源代碼下載:點擊打開鏈接

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 金秀| 延寿县| 清水县| 邵阳市| 溧水县| 如东县| 江津市| 大兴区| 吕梁市| 双柏县| 丰镇市| 娄烦县| 大洼县| 武城县| 夏津县| 资源县| 库尔勒市| 新干县| 新安县| 五河县| 万全县| 广元市| 海伦市| 霍林郭勒市| 察哈| 监利县| 孝义市| 福鼎市| 陆河县| 大理市| 台南县| 阿拉尔市| 贵阳市| 宣汉县| 上高县| 个旧市| 赤壁市| 屏边| 澎湖县| 鸡西市| 通山县|