准备一张名为picture的图片。
在main.xml中:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#000000">
<com.li.bitmap.MyView
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
在MyBitmapDemo.java中:
package com.li.bitmap;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.support.v4.app.NavUtils;
public class MyBitmapDemo extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
在MyView.java中:
package com.li.bitmap;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.util.AttributeSet;
import android.util.DisplayMetrics;
import android.view.View;
public class MyView extends View {
public MyView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onDraw(Canvas canvas) {
Bitmap bitmap = BitmapFactory.decodeResource(super.getResources(),
R.drawable.picture); // 找到图片的Bitmap对象
Paint paint = new Paint() ;
paint.setAntiAlias(true); // 消除锯齿
canvas.drawBitmap(bitmap,new Rect(100,100,200,200), //第一个矩形的位置
new Rect(100,100,200,200),paint); //第二个矩形的位置,两个矩形重叠的部分就是所剪切的地方
}
}