Android 中View.onDraw(Canvas canvas)的使用方法

Android 中View.onDraw(Canvas canvas)的使用方法,第1张

概述Android中View.onDraw(Canvascanvas)的使用方法View通过View.onDraw(Canvascanvas)来Draw.我们可以定义自己的继承于View的TestView,然后重载View.onDraw(Canvascanvas).

AndroID 中VIEw.onDraw(Canvas canvas)的使用方法

VIEw通过VIEw.onDraw(Canvas canvas)来Draw.

我们可以定义自己的继承于VIEw的TestVIEw,然后重载VIEw.onDraw(Canvas canvas).

对于自定义的TestVIEw如何与Activity关联?有以下两种方式:

直接在setContentVIEw(VIEw vIEw)里面加进去自定义的VIEw:setContentVIEw(new TestVIEw(this)). 另外,可以在layout文件里面可以使用自定义的VIEw(如何自定义的VIEw为内部类,就会失效),

如:

<?xml version="1.0" enCoding="utf-8"?> <FrameLayout   androID:layout_wIDth="fill_parent"   androID:layout_height="fill_parent"   xmlns:androID="http://schemas.androID.com/apk/res/androID">   <com.androID.test.TestVIEw     androID:ID="@+ID/testvIEw"     androID:layout_wIDth="fill_parent"     androID:layout_height="fill_parent"/> </FrameLayout> 

 以下为使用onDraw(Canvas canvas)画矩形区域,及在其上画文本的实例(通过使用内部类使程序显得更加简洁,紧凑):

package com.androID.test; import androID.app.Activity; import androID.content.Context; import androID.graphics.Canvas; import androID.graphics.color; import androID.graphics.Paint; import androID.graphics.Rect; import androID.graphics.Typeface; import androID.os.Bundle; import androID.vIEw.VIEw; public class TestActivity extends Activity {   /** Called when the activity is first created. */   @OverrIDe   public voID onCreate(Bundle savedInstanceState) {     super.onCreate(savedInstanceState);     setContentVIEw(new TestVIEw(this));   }   public class TestVIEw extends VIEw {     private Paint mPaint = new Paint();     public TestVIEw(Context context) {       super(context);     }          @OverrIDe     protected voID onDraw(Canvas canvas) {       // Todo auto-generated method stub       super.onDraw(canvas);              String text = "AndroID - 机器人";            mPaint.setcolor(color.WHITE);              Paint paint = new Paint();       paint.setcolor(color.RED);              String familyname = "宋体";       Typeface Font = Typeface.create(familyname,Typeface.BolD);       paint.setTypeface(Font);              paint.setTextSize(22);              canvas.drawRect(new Rect(0,320,240),mPaint);       canvas.drawText(text,100,paint);     }   } } 

 运行效果如下图:

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

总结

以上是内存溢出为你收集整理的Android 中View.onDraw(Canvas canvas)的使用方法全部内容,希望文章能够帮你解决Android 中View.onDraw(Canvas canvas)的使用方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1144417.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存