RotateAnimation詳解


 

其他構造器的旋轉也可參考這副圖。

      RotateAnimation旋轉坐標系為以旋轉點為坐標系(0,0)點。x軸為0度,順時針方向旋轉一定的角度。
        1.RotateAnimation(fromDegrees, toDegrees) [默認以View左上角頂點為旋轉點]。
        X軸順時針轉動到fromDegrees為旋轉的起始點,
        X軸順時針轉動到toDegrees為旋轉的起始點。
        如fromDegrees=0,toDegrees=90;為左上角頂點為旋轉點。0度為起始點,90度為終點。進行旋轉,旋轉了90度
        如fromDegrees=60,toDegrees=90;為左上角頂點為旋轉點。60度為起始點,90度為終點。進行旋轉,旋轉了90-60=30度
        
        2.RotateAnimation(float fromDegrees, float toDegrees, float pivotX, float pivotY)
        (pivotX,pivotY)為旋轉點。pivotX為距離左側的偏移量,pivotY為距離頂部的偏移量。即為相對於View左上角(0,0)的坐標點。
        如View width=100px,height=100px
        RotateAnimation(0,10,100,100);則以右下角頂點為旋轉點,從原始位置順時針旋轉10度
        RotateAnimation(0,90,50,50);則以View的中心點為旋轉點,旋轉90度
        
        3.RotateAnimation(fromDegrees, toDegrees, pivotXType, pivotXValue, pivotYType, pivotYValue)
        pivotXType, pivotXValue, pivotYType, pivotYValue  旋轉點類型及其值。
        Animation.ABSOLUTE為絕對值 其他為百分比。這個和平移動畫的一樣,不了解可以去那看
        如RotateAnimation(0, 90, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); 按中心點旋轉90度
        效果和2例中的RotateAnimation(0,90,50,50);則以View的中心點為旋轉點,旋轉90度 。效果一樣


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM