編輯:關於Android編程
本文實例講述了Android開發之動畫實現方法。分享給大家供大家參考。具體分析如下:
動畫分為三種:
逐幀動畫、布局動畫和控件動畫
控件動畫實現
通過重寫Animation的 applyTransformation (float interpolatedTime, Transformation t)函數來實現自定義動畫效果,另外一般也會實現 initialize (int width, int height, int parentWidth, int parentHeight)函數,這是一個回調函數告訴Animation目標View的大小參數,在這裡可以初始化一些相關的參數,例如設置動畫持續時間、設置Interpolator、設置動畫的參考點等。
OPhone在繪制動畫的過程中會反復的調用applyTransformation 函數,每次調用參數interpolatedTime值都會變化,該參數從0漸變為1,當該參數為1時表明動畫結束。通過參數Transformation 來獲取變換的矩陣(matrix),通過改變矩陣就可以實現各種復雜的效果。
下面舉例說明一個控件動畫:
Animation anim = new Animation() { @Override protected void applyTransformation(float interpolatedTime, Transformation t) { if (interpolatedTime == 1) { v.setVisibility(View.GONE); } else { v.getLayoutParams().height = initialHeight - (int)(initialHeight * interpolatedTime); v.requestLayout(); } } @Override public boolean willChangeBounds() { return true; } };
例子中,一個view的高度逐漸由原來的高度變為0。當動畫結束之後,view消失。
希望本文所述對大家的Android程序設計有所幫助。
在安卓操作系統下對於 TextView 字體的支持非常有限,默認情況下 TextView 的 typeface 屬性支持 Sans,serif,monospace 這三種
一、項目目錄結構二、activity_main.xml代碼<RelativeLayout xmlns:android=http://schemas.android.
不知道大家是否用過天天動聽,對於它界面上的半透明Menu效果,筆者感覺非常漂亮。下面是天天動聽半透明Menu的截圖,欣賞下吧: &nbs
概述: 我想我們在使用一些App的時候,應該不會出現一些“裸控件”的吧。除非是一些系統中的軟件,那是為了保持風格的一致性,做出的一些權衡。我這裡並