動態初始化animation,並讓動畫乙個元件運動到另外乙個元件的**
final imageview to=..final imageview from=..
int location = new
int [2];
from.getlocationinwindow(location);
int locationto = new
int [2];
to.getlocationinwindow(locationto);
animationset set = new animationset(true
); animation = null
;
float scalex = to.getdrawable().getintrinsicwidth()/(float
)from.getdrawable().getintrinsicwidth();
float scaley = to.getdrawable().getintrinsicheight()/(float
)from.getdrawable().getintrinsicheight();
//動畫的所有from屬性,都是相對與做動畫的元件的做參考的
//比如,scale動畫,from 1代表相對當前元件縮放比例不變 translate動畫,from 0 代表,相對當前元件位置,沒位移
animation = new scaleanimation(1, scalex, 1, scaley);
set.addanimation(animation);
animation = new translateanimation(0, locationto[0]-location[0], 0, locationto[1]-location[1]);
set.addanimation(animation);
set.setduration(1000);
set.setrepeatcount(0);
set.setinterpolator(
newmyinterpolator());
from.startanimation(set);
自己定義的幾種插值器
/*** 插值器類中的方程是 時間和變化幅度(如translateanimation動畫,則代表的位移) 0,0 ---1,1 區域內的曲線方程。當然,也可以超出這個區域,但是曲線必須經過1,1這個點
* 變化速率或速度調整當然就是切線角度了
* @author
cs *
*/static
class myinterpolator implements
interpolator
//速度慢慢增大,再減小。
private
static
float getsin(float
input)
//速度持續增大
private
static
float getcubeup(float
input)
//速度慢慢減緩。
private
static
float getsquaredown(float
input)
//非平滑曲線
private
static
float getseparete(float
input)
else
}}
Volley 的使用以及自定義Request
2013年google i o大會上推出了乙個新的網路通訊框架。volley是android平台上的網路通訊庫,能使網路通訊更快,更簡單,更健壯。volley特別適合資料量不大但是通訊頻繁的場景。1.簡單請求 2.自定義請求 首先,我們來看一下 stringrequest 類的原始碼 從圖中,我們可...
react native中用插值實現自定義動畫效果
設想在rn如何實現一段 轉盤的動畫 20 前慢,20 80 快,80 90 減慢,90 100 搖擺一下回正。難道用順序動畫去寫?這裡介紹的插值更方便,也許你沒注意到它的強大。官方 value.interpolate 注意input與output的對應方式。我們可以建立乙個線性動畫0 1,作為inp...
Github page搭建部落格使用自定義外掛程式的方法
github page的後台程式是由jekyll搭建,但由於github的保護措施,非認證的plugin一般不會被github page支援,但可以使用一些小技巧來繞過遮蔽。以個人page為例,個人page展示的是master分支下的內容,所以個人page通常有兩個分支,master和開發用的dev...