以模擬器屏幕的寬和高作為畫板
-
代碼文件
public class DrawDemoActivity extends Activity {
private ImageView iv;
Display current = null;
Canvas cv = null;
Paint paint = null;
Bitmap bitmap = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
iv=(ImageView) findViewById(R.id.iv);
current = getWindowManager().getDefaultDisplay();
//以模擬器屏幕的寬高作為畫板
bitmap = Bitmap.createBitmap(current.getWidth(), current.getHeight(),
Bitmap.Config.ARGB_8888);//可變視圖創建完成
//繪制畫布
cv=new Canvas(bitmap);
//繪制畫筆
paint=new Paint();
//設置顏色
int color=Color.argb(128, 50, 98, 60);
paint.setColor(color);
//設置樣式
paint.setStrokeWidth(12.5f);//筆的寬度
paint.setStyle(Paint.Style.STROKE);//填充或者不填充
//繪制圖形
cv.drawPoint(50, 50, paint);//點
cv.drawLine(50, 50, 160, 200, paint);//直線
cv.drawRect(80, 80, 220, 220, paint);//矩形
//繪制圓
RectF rf=new RectF(60, 60, 100, 120);
cv.drawOval(rf, paint);
//路徑 moveto lineto
Path p=new Path();
//繪制封閉圖形
p.moveTo(60, 60);
p.lineTo(80,90);
p.lineTo(100, 120);
p.lineTo(150, 180);
p.lineTo(200, 220);
//繪制路徑
cv.drawPath(p, paint);
//繪制文本
paint.setColor(Color.BLUE);
paint.setStrokeWidth(2.0f);//畫筆寬度
paint.setTextSize(100);
cv.drawText("你好,",20, 80, paint);
//將繪制好的圖形在顯示器上顯示出來
iv.setImageBitmap(bitmap);
}
}
-
布局文件
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>