寫一個水平滑動的View
保持饑餓,保持愚蠢,我們對待事情本來應該就是這樣的
接下來我要寫一個水平滑動的自寫義,實現效果
水平滑動我們有很多種實現方法,recyceryView,HorizontalScrollView都可以,在做過的項目中基本都會用到, 我會把它例出來,一一歸位,學習本應該如此,總結,總結,總結!!!
1.自定義首先要extend一個View,實現裏面的四個方法,當然第四個一般不會用到
寫構造方法的時候要是有要求的
1.this(context,null);
this(context, attrs,0);
super(context, attrs, defStyleAttr);
2.直接在每個構造方法裏調用 (切記!!!)
2.調用HintTypedArray.obtainStyleAttributs()來設置一系列的屬性
文字大小,排列數量等等
註意這裏 寫的時候要加上上一個節點的名字,用_作連接符。Android中把控件都是這樣,有調理性 在這裏又踩坑了,!!!
TintTypedArray tintType = TintTypedArray.obtainStyledAttributes(getContext(), attrs, R.styleable.HorizontalSelectedView);
R.Styleable中的文件必須和自定義的類名是一樣的,這樣保證下面正確的用到 (註意)
attrs.xml中
<resources>
<declare-styleable name="HorizontalselectedView">
<attr name="HorizontalselectedViewSeesize" format="integer"></attr>
//在代碼中用這樣的方式得到 R.styleable.HorizontalselectedView_HorizontalselectedViewSeesize
在屬性中經常會遇到畫筆這個屬性,paint,Textpaint
3.在onDraw()方法中開始畫控件的大小了
1.首先考慮件的寬高 getWith();getHeight()
2.拿到整個數據用畫筆畫出來
寫一個水平滑動的View