最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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

復(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)包含了一個canvas句柄,可以直接通過我們前面講到的Canvas類進行相關(guān)的操作,完整的例子,大家可以參考Android SDK中例子Snake貪食蛇游戲的實現(xiàn)。

  }

  }


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

相關(guān)文章

最新評論

汨罗市| 通海县| 丰宁| 闻喜县| 汤原县| 新和县| 民乐县| 湘阴县| 贵南县| 乌鲁木齐县| 乌恰县| 大理市| 沂源县| 皮山县| 民县| 伊通| 东光县| 富阳市| 宁陕县| 兴文县| 江孜县| 中西区| 望江县| 左云县| 金堂县| 平阳县| 雷山县| 静宁县| 贵定县| 襄城县| 铜梁县| 藁城市| 礼泉县| 寿光市| 五家渠市| 桂东县| 盖州市| 太康县| 新乡县| 新蔡县| 九龙城区|