Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android 屏幕上面畫線

android 屏幕上面畫線

編輯:關於Android編程

作業如下:在android屏幕上面任意畫線                            

package feng.f121.drawline;//本人創建的包名,每人有每人的不同的包

import java.security.PublicKey;

import android.R.integer;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Style;
import android.graphics.Path;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Button;

 

//新建一個類繼承View

public class Drawl extends View{

 private int mov_x;//聲明起點坐標
 private int mov_y;
 private Paint paint;//聲明畫筆
 private Canvas canvas;//畫布
 private Bitmap bitmap;//位圖
 private int blcolor;
 public Drawl(Context context) {
  super(context);
  paint=new Paint(Paint.DITHER_FLAG);//創建一個畫筆
  bitmap = Bitmap.createBitmap(480, 854, Bitmap.Config.ARGB_8888); //設置位圖的寬高
  canvas=new Canvas();
  canvas.setBitmap(bitmap);
 
  paint.setStyle(Style.STROKE);//設置非填充
  paint.setStrokeWidth(5);//筆寬5像素
  paint.setColor(Color.RED);//設置為紅筆
  paint.setAntiAlias(true);//鋸齒不顯示
  
 }

//畫位圖
 @Override
 protected void onDraw(Canvas canvas) {
//  super.onDraw(canvas);
  canvas.drawBitmap(bitmap,0,0,null);
 }
 //觸摸事件
 @Override
 public boolean onTouchEvent(MotionEvent event) {
  if (event.getAction()==MotionEvent.ACTION_MOVE) {//如果拖動
   canvas.drawLine(mov_x, mov_y, event.getX(), event.getY(), paint);//畫線
   invalidate();
  }
  if (event.getAction()==MotionEvent.ACTION_DOWN) {//如果點擊
   mov_x=(int) event.getX();
   mov_y=(int) event.getY();
   canvas.drawPoint(mov_x, mov_y, paint);//畫點
   invalidate();

  }
  mov_x=(int) event.getX();
  mov_y=(int) event.getY();
  return true;
 }
 
 
}

 

在Activity中

public class DrawLine extends Activity {
 private Drawl bDrawl;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        bDrawl=new Drawl(this);
       setContentView(bDrawl);//將view視圖放到Activity中顯示
    }


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