亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android UI開發(fā) View自繪控件 分享

 更新時(shí)間:2013年05月28日 10:19:00   作者:  
Android UI開發(fā) View自繪控件 分享,需要的朋友可以參考一下

 很多時(shí)候想要設(shè)計(jì)漂亮的Android UI,使用Android自帶的控件無(wú)法滿足我們的需要就要考慮自繪控件,在Android界面顯示類View,可以通過(guò)繼承擴(kuò)展重寫相關(guān)方法來(lái)實(shí)現(xiàn)我們的圖形繪制。

  首先我們需要了解下View類的底層實(shí)現(xiàn),在SDK中我們可以看到View直接繼承于Java的基類Object,實(shí)現(xiàn)了圖形繪制和按鍵事件 Drawable.Callback KeyEvent.Callback的相關(guān)方法,我們自繪時(shí)主要實(shí)現(xiàn)其內(nèi)部的onDraw方法,相關(guān)的界面計(jì)算可以重寫onMeasure方法,對(duì)于相關(guān)的按鍵可以重載onKeyDown、onKeyUp以及onTouchEvent等,下面android開發(fā)網(wǎng)就以一個(gè)實(shí)例來(lái)表示。

復(fù)制代碼 代碼如下:

  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);

  //這里是本類的構(gòu)造,相關(guān)初始化可以在這里添加代碼

  }

  @Override

  protectd void onDraw(Canvas canvas)

  {

  super(canvas);

  //繪圖的關(guān)鍵,可以看到已經(jīng)包含了一個(gè)canvas句柄,可以直接通過(guò)我們前面講到的Canvas類進(jìn)行相關(guān)的操作,完整的例子,大家可以參考Android SDK中例子Snake貪食蛇游戲的實(shí)現(xiàn)。

  }

  }


  有關(guān)View類的更新,我們直接通過(guò)調(diào)用invalidate(int l,int r,int r,int b)來(lái)更新一個(gè)Rect矩形區(qū)域,或更新全部,同時(shí)在線程中我們使用需要調(diào)用postInvalidate來(lái)更新界面。

相關(guān)文章

  • Android中關(guān)于Binder常見面試問題小結(jié)

    Android中關(guān)于Binder常見面試問題小結(jié)

    這篇文章主要介紹了Android中關(guān)于Binder幾個(gè)面試問題,binder是一種進(jìn)程間通訊的機(jī)制,進(jìn)程間通訊需要了解用戶空間和內(nèi)核空間,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • Android開發(fā)之AAR文件的生成與使用步驟

    Android開發(fā)之AAR文件的生成與使用步驟

    Android中的aar主要是針對(duì)于Android Library而言的,可以簡(jiǎn)單的理解為是對(duì)Android Library的打包,這個(gè)包的格式為.aar,下面這篇文章主要給大家介紹了關(guān)于Android開發(fā)之AAR文件的生成與使用步驟的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • Android Studio導(dǎo)入jar包過(guò)程詳解

    Android Studio導(dǎo)入jar包過(guò)程詳解

    這篇文章主要介紹了Android Studio導(dǎo)入jar包過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • Android中EditText實(shí)現(xiàn)不可編輯解決辦法

    Android中EditText實(shí)現(xiàn)不可編輯解決辦法

    這篇文章主要介紹了Android中EditText實(shí)現(xiàn)不可編輯解決辦法,需要的朋友可以參考下
    2014-12-12
  • Jetpack?Compose?分步指南教程詳解

    Jetpack?Compose?分步指南教程詳解

    這篇文章主要為大家介紹了Jetpack?Compose?分步指南教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • Android實(shí)現(xiàn)帶節(jié)點(diǎn)的進(jìn)度條

    Android實(shí)現(xiàn)帶節(jié)點(diǎn)的進(jìn)度條

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)帶節(jié)點(diǎn)的進(jìn)度條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Android框架Volley使用之Post請(qǐng)求實(shí)現(xiàn)方法

    Android框架Volley使用之Post請(qǐng)求實(shí)現(xiàn)方法

    這篇文章主要介紹了Android框架Volley使用之Post請(qǐng)求實(shí)現(xiàn)方法,,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • Android中使用ShareSDK集成分享功能的實(shí)例代碼

    Android中使用ShareSDK集成分享功能的實(shí)例代碼

    下面小編就為大家分享一篇Android中使用ShareSDK集成分享功能的實(shí)例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • Google 開發(fā)Android MVP架構(gòu)Demo深入解析

    Google 開發(fā)Android MVP架構(gòu)Demo深入解析

    這篇文章主要為大家介紹了Google 開發(fā)Android MVP架構(gòu)Demo深入解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • Android App中使用Pull解析XML格式數(shù)據(jù)的使用示例

    Android App中使用Pull解析XML格式數(shù)據(jù)的使用示例

    這篇文章主要介紹了Android App中使用Pull解析XML格式數(shù)據(jù)的使用示例,Pull是Android中自帶的XML解析器,Java里也是一樣用:D需要的朋友可以參考下
    2016-04-04

最新評(píng)論