微信炸金花源碼搭建
在Android開發中有多種方式實現微信炸金花源碼搭建,常見的有三種如下:
-
不斷地修改View的LayoutParams
-
采用動畫向View施加位移效果
-
調用View的scrollTo( )、scrollBy( )
前兩種方式我們還是挺熟悉的,不但見得挺多的而且還經常使用;至於最後一種微信炸金花源碼搭建方式,可能就要相對陌生些了。
詳細咨詢Q 2171793408 http://wowotouba.com/h5
其實,在Android中我們常見到的ListView、Launcher、SlidingMenu、ViewPager等等這些具有彈性滑動的View的背後都隱藏著一個機智又乖巧的小精靈——Scroller。這些控件的使用場景和作用各不相同,但在它們的內部均廣泛又深刻地使用了Scroller的scrollTo()和scrollBy(),如此的實現不但豐富了操作方式而且極大提升了用戶體驗。
在此,我們從源碼到實例,由簡單到復雜,從表象到機制,一步步走進既陌生卻又有點熟悉的Scroller
scrollTo( )和scrollBy( )
在View的源碼中,系統提供了scrollTo()和scrollBy()這兩個方法用於實現View的滾動。這兩個微信炸金花源碼搭建方法又有什麽聯系呢,我們先來瞅瞅scrollTo()的源碼:
scrollTo()是實現View滾動的核心,調用該方法使得View相對於其初始位置滾動某段距離。在該方法內部將輸入參數x,y分別賦值給用於表示View在X方向滾動距離的mScrollX和表示View在Y方向滾動距離的mScrollY,然後調用onScrollChanged()並且刷新重繪View。在後續的操作中調用view.getScrollX()或view.getScrollY()可以很容易地得到mScrollX和mScrollY,關於這兩個值我們再看看源碼是怎麽說的。
關於mScrollX,官方文檔描述如下:
關於mScrollY,官方文檔描述如下:
mScrollX和mScrollY用於描述View的內容在水平方向或垂直方向滾動的距離。
什麽是View的內容呢?比如,對於一個TextView而言,文本就是它的內容;對於一個ViewGroup而言,子View就是微信炸金花源碼搭建的內容。
故在此,我們請務必註意:scrollTo()和scrollBy()滾動的是View的內容,而不是將View做整體的移動。
嗯哼,繼續看scrollBy()的源碼:
哇哈,看到了吧:微信炸金花源碼搭建的源碼非常簡潔,它僅僅是再次調用了scrollTo()。
直白地說:它只是把輸入參數x,y累加到了mScrollX和mScrollY上而已。
所以,scrollBy()方法是在mScrollX和mScrollY的基礎上滾動的。
微信炸金花源碼搭建