之前學過的就不再記錄了,此後學習的均記於此。今天要做的是用自定義view繪製乙個移動的小球。
首先需要新建乙個class讓它繼承自view基類,然後在其內部重寫ondraw方法(用來實現在指定位置繪製小球)。然後,還需要用ontouchevent實現該元件的觸碰事件,讓小球隨手指移動。**如下:
//首先要新建繪製圖形的元件,此class繼承自view基類,並重現了ondraw方法
public class drawview extends view
public drawview(context context)
public void ondraw(canvas canvas)
// 新增觸碰事件重寫事件處理方法
@override
public boolean ontouchevent(motionevent event)
}
寫完此class後需要將其新增到主activity,**如下:
public class mainactivity extends actionbaractivity
}
我是在預設布局裡新增的linearlayout:
最後執行效果如下:
安卓自定義view繪製尺寸
我們知道view在螢幕上顯示出來要先經過measure和layout.在呼叫onmeasure int widthspec,int heightspec 方法時,要涉及到measurespec的使用,measurespec有3種模式分別是unspecified,exactly和at most,那麼這...
安卓自定義View 座標系篇
由於移動裝置一般定義螢幕左上角為座標原點,向右為x軸增大方向,向下為y軸增大方向,所以在在手機螢幕上的座標系與數學中常見的座標繫在y軸的方向上是相反的。如下圖 下圖中的 是對應的 實際螢幕上的預設座標系如下 其中棕色部分為手機螢幕 注意 view的座標系是相對于父控制項而言的 gettop 獲取子v...
安卓自定義View基礎 座標系
由於移動裝置一般定義螢幕左上角為座標原點,向右為x軸增大方向,向下為y軸增大方向,所以在手機螢幕上的座標系與數學中常見的座標系是稍微有點差別的,詳情如下 ps 其中的 a 是對應的,注意y軸方向!實際螢幕上的預設座標系如下 ps 假設其中棕色部分為手機螢幕 注意 view的座標系統是相對于父控制項而...