Android开发之图形图像与动画(一)Paint和Canvas类学习
Paint类
*Paint类代表画笔,用来描述图形的颜色和风格,如线宽,颜色,透明度和填充效果等信息。
*使用Paint类时,需要先创建该类的对象,可以通过该类的构造函数实现。通常情况的实现代码是:
*Paintpaint=newPaint();
*创建完Paint对象后,可以通过该对象提供的方法对画笔的默认设置进行改变
Canvas
*Canvas类代表画布,通过该类提供的构造方法,可以绘制各种图形。
*通常情况下,要在Android中绘图,需要先创建一个继承自View类的视图,并且在该类中重写它的onDraw方法,
*然后在显示绘图的Activity中添加该视图
实现此实例的xml文件的定义如下:
代码如下:
<FrameLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Draw_View"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"/>
<com.example.draw_view.DrawView
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</FrameLayout>
publicclassDrawViewextendsView{
publicDrawView(Contextcontext,AttributeSetattrs){
super(context,attrs);
//TODOAuto-generatedconstructorstub
}
@Override
protectedvoidonDraw(Canvascanvas){
//TODOAuto-generatedmethodstub
super.onDraw(canvas);
Paintpaint=newPaint();
paint.setColor(Color.RED);
paint.setShadowLayer(2,3,3,Color.rgb(180,180,180));
canvas.drawRect(40,40,200,100,paint);
}
}