Android UI开发 View自绘控件 分享

 更新时间:2013年05月28日 10:19:00   作者:  
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贪食蛇游戏的实现。

  }

  }


  有关View类的更新,我们直接通过调用invalidate(int l,int r,int r,int b)来更新一个Rect矩形区域,或更新全部,同时在线程中我们使用需要调用postInvalidate来更新界面。

相关文章

  • Android中关于Binder常见面试问题小结

    Android中关于Binder常见面试问题小结

    这篇文章主要介绍了Android中关于Binder几个面试问题,binder是一种进程间通讯的机制,进程间通讯需要了解用户空间和内核空间,本文通过示例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • Android开发之AAR文件的生成与使用步骤

    Android开发之AAR文件的生成与使用步骤

    Android中的aar主要是针对于Android Library而言的,可以简单的理解为是对Android Library的打包,这个包的格式为.aar,下面这篇文章主要给大家介绍了关于Android开发之AAR文件的生成与使用步骤的相关资料,需要的朋友可以参考下
    2022-07-07
  • Android Studio导入jar包过程详解

    Android Studio导入jar包过程详解

    这篇文章主要介绍了Android Studio导入jar包过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Android中EditText实现不可编辑解决办法

    Android中EditText实现不可编辑解决办法

    这篇文章主要介绍了Android中EditText实现不可编辑解决办法,需要的朋友可以参考下
    2014-12-12
  • Jetpack Compose 分步指南教程详解

    Jetpack Compose 分步指南教程详解

    这篇文章主要为大家介绍了Jetpack Compose 分步指南教程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • Android实现带节点的进度条

    Android实现带节点的进度条

    这篇文章主要为大家详细介绍了Android实现带节点的进度条,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • Android框架Volley使用之Post请求实现方法

    Android框架Volley使用之Post请求实现方法

    这篇文章主要介绍了Android框架Volley使用之Post请求实现方法,,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • Android中使用ShareSDK集成分享功能的实例代码

    Android中使用ShareSDK集成分享功能的实例代码

    下面小编就为大家分享一篇Android中使用ShareSDK集成分享功能的实例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • Google 开发Android MVP架构Demo深入解析

    Google 开发Android MVP架构Demo深入解析

    这篇文章主要为大家介绍了Google 开发Android MVP架构Demo深入解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • Android App中使用Pull解析XML格式数据的使用示例

    Android App中使用Pull解析XML格式数据的使用示例

    这篇文章主要介绍了Android App中使用Pull解析XML格式数据的使用示例,Pull是Android中自带的XML解析器,Java里也是一样用:D需要的朋友可以参考下
    2016-04-04

最新评论