編輯:關於Android編程
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 stub
init(context,null);
}
public FightViewDemo(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
init( context, attrs);
}
public FightViewDemo(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
// TODO Auto-generated constructor stub
init( context, attrs);
}
private Paint paint;
private void init(Context context, AttributeSet attrs)
{
paint = new Paint();
paint.setColor(Color.RED);
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
//TODO 繪制文本
// 整個父控件 getHeight
int height = getHeight();
// 整個父控件 getWidth
int 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
[Android] SQLite數據庫之增刪改查基礎操作
在編程中經常會遇到數據庫的操作,而Android系統內置了SQLite,它是一款輕型數據庫,遵守事務ACID的關系型數據庫管理系統,它占用的資源非常低,能夠支持Windo
Andorid Activity的本質是什麼
本文我主要通過查看Activity的實現源碼和推測其設計思想的方法來探討一下Android的本質是什麼。 Activity恐怖是Android用得最多且是最基本的組
Android NDK學習筆記3-入門案例篇
上篇文章我們安裝了NDK系統,在NDK系統文件中包含samples文件夾,打開該文件夾,我們發現裡面有大量的案例項目,這裡我們通過Eclipse導入一個名為hello-j
安卓實戰開發之CardView的selector及GrideView的item按下狀態保留selector(state_activated)的實現
android的selector對於android開發者而言再熟悉不過了,只要定義一個drawable目錄下定義一個selector的xml文件,在布局文件中backgr