Android UI 开发专题(四) View 自绘控件
很多时候想要设计漂亮的 Android UI,使用 Android 自带的控件无法满足我们的需要就要考虑自绘控件,
在 Android 界面显示类 View,可以通过继承扩展重写相关方法来实现我们的图形绘制。
首先我们需要了解下 View 类的底层实现,在 SDK 中我们可以看到 View 直接继承于 Java 的基类
Object,实现了图形绘制和按键事件 Drawable.Callback KeyEvent.Callback 的相关方法,我们自绘
时主要实现其内部的 onDraw 方法,相关的界面计算可以重写 onMeasure 方法,对于相关的按键可以
重载 onKeyDown、onKeyUp 以及 onTouchEvent 等,下面 android 开发网就以一个实例来表示。
public class cwjView extendsView
{
public cwjView(Context context)
{
this(context,null);
}
public cwjView(Context context,AttributeSet attrs)
{
this(context,attrs,0);
}
public cwjView(Context context,AttributeSet attrs,int defStyle)
{
super(context,attrs,defStyle);
//这里是本类的构造,相关初始化可以在这里添加代码
}
@Override
protectd void onDraw(Canvas canvas)
{
super(canvas);
//绘图的关键,可以看到已经包含了一个 canvas 句柄,可以直接通过我们前面讲到的 Canvas 类进
行相关的操作,完整的例子,大家可以参考 Android SDK 中例子 Snake 贪食蛇游戏的实现。
}
评论0