2017-08-09 16 views
2

私はdrawablesanimation listXMLを持っている:私は私のcontent_main.xmlからlistと呼ばKotlinでアニメーションリストをアニメーション化する方法は?

<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false"> 
    <item android:duration="40" android:drawable="@drawable/animated_person_0 /> 
    <item android:duration="40" android:drawable="@drawable/animated_person_1 /> 
    <item android:duration="40" android:drawable="@drawable/animated_person_2 /> 
</animated-list> 

<ImageView 
    ... 
    android:id="@+id/animatedPerson" 
    android:src="@drawable/animatedperson" 
    ... 
/> 

そして今、私は私のコードで試してください何でも、私はアニメーションを開始することはできません。 Javaで

+0

試したコードを表示してください。 – egoldx

+0

それは役に立たないでしょう...私は初心者であり、助けになるかどうかわかりません。例:animatedPerson.animate()。 Javaでは、私が知る限り、android:backgroundとgetBackground.animate()を使うべきです。しかし、私はKotlinで同様のことを見つけることはできません。 –

答えて

2

それはこのようなものだ:

// Get the background, which has been compiled to an AnimationDrawable object. 
AnimationDrawable frameAnimation = (AnimationDrawable) img.getBackground(); 

// Start the animation (looped playback by default). 
frameAnimation.start(); 

だから、Kotlinは本当に似ています:

// Get the background, which has been compiled to an AnimationDrawable object. 
val frameAnimation: AnimationDrawable = img.background as AnimationDrawable 

// Start the animation (looped playback by default). 
frameAnimation.start() 
-1

Kotlinは、Javaに似ている...

//バックグラウンドを取得し、 AnimationDrawableオブジェクトにコンパイルされています。

val frameAnimation: AnimationDrawable = img.background as AnimationDrawable 

//アニメーションを開始します(デフォルトでループ再生)。

frameAnimation.start() 

もう一つの方法はCtrl + Shift + Aを押してkotlinし、操作フェイルドでは、Kotlinへ

変換のJavaを書き留めてJavaコードを変換する使用することです。..

それは自動的にkotlinのjavaコードを変換します。

関連する問題