2017-11-14 17 views
1

テキスト(現在はTextView)を数秒間点滅させる必要があります。 how to do it in java hereにはいくつかの回答がありますが、Kotlinにはjavaがそうでない構文/言語機能がいくつかあるので、私はKotlinを使ってAndroidでテキストを点滅させるための最も簡潔な方法を尋ねています。Androidでテキストが点滅し、最も簡潔にKotlin

私はフェード/スムーズな点滅を目指していますが、私は滑らかでない点滅をする方法にもオープンしています。

私は軽量コードのパフォーマンスも賢明です。

ありがとうございました!楽しいのビットのために

答えて

3

、あなたが拡張機能を定義することができます。

fun View.blink(
    times: Int = Animation.INFINITE, 
    duration: Long = 50L, 
    offset: Long = 20L, 
    minAlpha: Float = 0.0f, 
    maxAlpha: Float = 1.0f, 
    repeatMode: Int = Animation.REVERSE 
) { 
    startAnimation(AlphaAnimation(minAlpha, maxAlpha).also { 
     it.duration = duration 
     it.startOffset = offset 
     it.repeatMode = repeatMode 
     it.repeatCount = times 
    }) 
} 

そして、(あなたがリンクされ、問題の例を使用して)ので、同じようにそれを使用します。

myText.blink(3) // Blink 3 times 
yourText.blink() // Just keep blinking 

明らかにあなたがすることができますユースケースに合わせてパラメータを変更してください。

必要に応じてアニメーションを停止するには、点滅表示でclearAnimation()(上記の例ではyourText)に電話してください。

+0

ニース、シンプルで簡潔! –

+0

@LouisCAD編集していただきありがとうございます。私はKotlin/Androidにあまり慣れていません。 –

関連する問題