16.Animations(MPAndroidChart中文翻譯)

目錄

第8節(jié).Setting Colors(MPAndroidChart中文翻譯)
第9節(jié).Formatting Data Values (ValueFormatter)(MPAndroidChart中文翻譯)
第10節(jié)-Formatting Axis Values (AxisValueFormatter)(MPAndroidChart中文翻譯)
第11節(jié).General Settings & Styling(MPAndroidChart中文翻譯)
第12節(jié).Specific Settings & Styling(MPAndroidChart中文翻譯)
第13節(jié).Legend(MPAndroidChart中文翻譯)
第14節(jié).Dynamic & Realtime Data(MPAndroidChart中文翻譯)
第15節(jié). Modifying the Viewport(MPAndroidChart中文翻譯)
第16節(jié).Animations(MPAndroidChart中文翻譯)
第17節(jié). MarkerView (Popup View)(MPAndroidChart中文翻譯)
第18節(jié). The ChartData class(MPAndroidChart中文翻譯)
第19節(jié). ChartData subclasses(MPAndroidChart中文翻譯)
第20節(jié). The DataSet class (general DataSet styling)(MPAndroidChart中文翻譯)
第21節(jié). DataSet subclasses (specific DataSet styling)(MPAndroidChart中文翻譯)
第22節(jié). The ViewPortHandler(MPAndroidChart中文翻譯)
第23節(jié). Customizing the Fill-Line-Position (FillFormatter)(MPAndroidChart中文翻譯)
第24節(jié). Proguard(MPAndroidChart中文翻譯)
第25節(jié). Realm.io mobile database(MPAndroidChart中文翻譯)
第26節(jié). Creating your own (custom) DataSets(MPAndroidChart中文翻譯)
第27節(jié). Miscellaneous (more useful stuff)(MPAndroidChart中文翻譯)

注意:動畫僅支持API 11(Android3.0.x)及以上版本.
在低版本設(shè)備上,動畫不會執(zhí)行,但程序不會崩潰.

所有類型的圖表都支持動畫,可以用一種看起來非常棒的方式來創(chuàng)建和構(gòu)建圖表.存在三種不同類型的動畫方法,分為xy,x和y.

  • animateX(int durationMillis): 圖表x軸上的值顯示動畫,意思是圖表將會從左到右按指定的時間進行構(gòu)建.
  • animateY(int durationMillis): 圖表y軸上的值顯示動畫,意思是圖表將會從下到上按指定的時間進行構(gòu)建.
  • animateXY(int xDuration, int yDuration): 同時執(zhí)行animateX(...)和animateY(..,)方法的動畫.
mChart.animateX(3000); // animate horizontal 3000 milliseconds
// or:
mChart.animateY(3000); // animate vertical 3000 milliseconds
// or:
mChart.animateXY(3000, 3000); // animate horizontal and vertical 3000 milliseconds

如果animate(...)(所有類型)被調(diào)用了,不需要額外調(diào)用invalidate()方法來刷新圖表.

Animation easing

這個依賴庫允許你將非常簡單的功能應(yīng)用到你的動畫中.你可以在預(yù)定義的Easing.EasingOption:枚舉中進行選擇:

  public enum EasingOption {
      Linear,
      EaseInQuad,
      EaseOutQuad,
      EaseInOutQuad,
      EaseInCubic,
      EaseOutCubic,
      EaseInOutCubic,
      EaseInQuart,
      EaseOutQuart,
      EaseInOutQuart,
      EaseInSine,
      EaseOutSine,
      EaseInOutSine,
      EaseInExpo,
      EaseOutExpo,
      EaseInOutExpo,
      EaseInCirc,
      EaseOutCirc,
      EaseInOutCirc,
      EaseInElastic,
      EaseOutElastic,
      EaseInOutElastic,
      EaseInBack,
      EaseOutBack,
      EaseInOutBack,
      EaseInBounce,
      EaseOutBounce,
      EaseInOutBounce,
  }

這里主要有兩種方式來進行緩動動畫:
1,預(yù)定義的easing options:(可以運行在任何Android版本中)

public void animateY(int durationmillis, Easing.EasingOption option); 

用預(yù)定義的easing option中的緩動動畫:

// animate both axes with easing
mChart.animateY(3000, Easing.EasingOption.EaseOutBack); 

當(dāng)你希望你的代碼可以在Android3.0(API 11)以下版本運行時,一定要使用預(yù)定義Easing.EasingOption中的緩動動畫.

2,自定義緩動功能(自定義的緩動功能在Android3.0以下會崩潰)

public void animateY(int durationmillis, EasingFunction function); 

通過創(chuàng)建你自己的緩動功能類并實現(xiàn)EasingFunction接口,來創(chuàng)建你自己的緩動功能:

/**
 * Interface for creating custom made easing functions. 
 */
 public interface EasingFunction {
    /**
     * Called everytime the animation is updated.
     * @param input - the time passed since the animation started (value between 0 and 1)
     */
     public float getInterpolation(float input);
 }

然后用下面方式調(diào)用(注意,Android3.0以下不會執(zhí)行,并使程序崩潰):

// animate both axes with easing
mChart.animateY(3000, new MyEasingFunction()); 
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末害捕,一起剝皮案震驚了整個濱河市绿淋,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌尝盼,老刑警劉巖吞滞,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異盾沫,居然都是意外死亡裁赠,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門赴精,熙熙樓的掌柜王于貴愁眉苦臉地迎上來佩捞,“玉大人,你說我怎么就攤上這事蕾哟∫怀溃” “怎么了莲蜘?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長掀潮。 經(jīng)常有香客問我菇夸,道長,這世上最難降的妖魔是什么仪吧? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任庄新,我火速辦了婚禮,結(jié)果婚禮上薯鼠,老公的妹妹穿的比我還像新娘择诈。我一直安慰自己,他們只是感情好出皇,可當(dāng)我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布羞芍。 她就那樣靜靜地躺著,像睡著了一般郊艘。 火紅的嫁衣襯著肌膚如雪荷科。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天纱注,我揣著相機與錄音畏浆,去河邊找鬼。 笑死狞贱,一個胖子當(dāng)著我的面吹牛刻获,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播瞎嬉,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼蝎毡,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了氧枣?” 一聲冷哼從身側(cè)響起沐兵,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎挑胸,沒想到半個月后痒筒,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡茬贵,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了移袍。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片解藻。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖葡盗,靈堂內(nèi)的尸體忽然破棺而出螟左,到底是詐尸還是另有隱情啡浊,我是刑警寧澤,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布胶背,位于F島的核電站巷嚣,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏钳吟。R本人自食惡果不足惜廷粒,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望红且。 院中可真熱鬧坝茎,春花似錦、人聲如沸暇番。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽壁酬。三九已至次酌,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間舆乔,已是汗流浹背岳服。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留蜕煌,地道東北人派阱。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像斜纪,于是被迫代替她去往敵國和親贫母。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容