Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android UI開發 View自繪控件 分享

Android UI開發 View自繪控件 分享

編輯:Android開發實例

 很多時候想要設計漂亮的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來更新界面。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved