Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android 實現圖片反轉

Android 實現圖片反轉

編輯:關於android開發

  為啥要圖片反轉(不是旋轉哦),游戲我們在游戲開發中,為了節省圖片資源(空間), 有可能會使用到圖片反轉,例如,一個人物圖片,面向左,或右,如果不能實現圖片反轉的情況下,就需要兩張圖片了,這樣就會占用資源很多,來看看下面的效果圖和代碼。

  public class ImageSurfaceView extends SurfaceView implements SurfaceHolder.Callback{

  public Bitmap image_bitmap;

  public ImageSurfaceView(Context context) {
  super(context);
  //添加回調
  SurfaceHolder holder=this.getHolder();
  holder.addCallback(this);

  initBitmap(context);
  }

  public void initBitmap(Context context){
  Resources r=context.getResources();
  image_bitmap=BitmapFactory.decodeResource(r,R.drawable.ima);
  }

  //界面渲染
  public void onDraw(Canvas canvas){
  canvas.drawBitmap(image_bitmap,0,0, null); //輸出第一張圖片
  //初始化Matrix 該類是針對圖形做一些效果的工具類
  Matrix m=new Matrix();
  m.setScale(-1,1);
  m.postTranslate(image_bitmap.getWidth()*2,0); //向右平移兩個圖片寬度的位置
  canvas.drawBitmap(image_bitmap, m, paint); //輸出第二張圖片
  }

  @Override
  public void surfaceChanged(SurfaceHolder holder, int format, int width,int height) {
  }

  @Override
  public void surfaceCreated(SurfaceHolder holder) {
  Canvas canvas=holder.lockCanvas(); //調用渲染界面的方法 渲染出界面
  onDraw(canvas);
  holder.unlockCanvasAndPost(canvas);
  }

  @Override
  public void surfaceDestroyed(SurfaceHolder holder) {

  // TODO Auto-generated method stub

  }
  }

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved