Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android 自定義View需要重寫ondraw()等方法

Android 自定義View需要重寫ondraw()等方法

編輯:關於Android編程

Android 自定義View需要重寫ondraw()等方法,這篇博客給大家說說自定義View的寫法,需要我們繼承View,然後重寫一些

方法,方法多多,看你需要什麼方法


首先寫一個自定義的View 繼承View

package com.example.engineerjspview;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.MotionEvent;
/**
 * 自定義 EngineerJspView
 * @author Engineer-Jsp
 * @date 2014.10.28
 * */
import android.view.View;
public class EngineerJspView extends View{
	public float E_X = 188;  
    public float E_Y = 188;  
    Paint paint = new Paint(); 

	public EngineerJspView(Context context) {
		super(context);
	}
	public EngineerJspView(Context context, AttributeSet set){
		super(context, set); 
	}
	@Override
	protected void onDraw(Canvas canvas) {
		super.onDraw(canvas);
		paint.setColor(Color.RED);  
        canvas.drawCircle(E_X, E_Y, 88, paint);
	}
	@Override
	public boolean onTouchEvent(MotionEvent event) {
		 E_X = event.getX();  
	     E_X = event.getY();  
	        invalidate();
		return false;
	}
	@Override
	protected void onAnimationStart() {
		super.onAnimationStart();
	}
	@Override
	protected void onAnimationEnd() {
		super.onAnimationEnd();
	}

}

布局文件:



    



主活動:

package com.example.engineerjspview;
/**
 * 自定義 EngineerJspView
 * @author Engineer-Jsp
 * @date 2014.10.28 
 * */
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}

}

效果:



自定義View看你需求而定,並不只是畫圖形而已,我這裡只是說明下自定義View需要重寫的方法~~

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