Android --------- 自訂VIew
package com.example.coustomviewdemo;import android.R.interpolator;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Paint.FontMetrics;import android.util.AttributeSet;import android.view.View;public class FightViewDemo extends View {public FightViewDemo(Context context) {super(context);// TODO Auto-generated constructor stubinit(context,null);}public FightViewDemo(Context context, AttributeSet attrs) {super(context, attrs);// TODO Auto-generated constructor stubinit( context, attrs);}public FightViewDemo(Context context, AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);// TODO Auto-generated constructor stubinit( context, attrs);}private Paint paint;private void init(Context context, AttributeSet attrs){paint = new Paint();paint.setColor(Color.RED);}@Overrideprotected void onDraw(Canvas canvas) {// TODO Auto-generated method stubsuper.onDraw(canvas);//TODO 繪製文本//整個父控制項 getHeight int height = getHeight();//整個父控制項 getWidthint width = getWidth();//如何擷取組件自身的高度和寬度?String text = "LoveHellOWorld";FontMetrics metrics = paint.getFontMetrics();int descent = (int)metrics.descent;//初始化 widths 長度為 text文本的字元的大小。float[] widths = new float[text.length()];//擷取一哥字串 每一個字元的像素寬度。paint.getTextWidths(text, widths);//擷取自身組件的長度int myWidth=0;for(int i=0;i