抱歉,我對堆疊溢位有點陌生,但希望這個問題可以理解!
我與一位員工/社區成員交談,他向我展示了從一項活動(在我的情況下是存盤影片的 GlobeActivity)到另一項活動(存盤用戶名/密碼的 MainActivity)的意圖。但是影片沒有出現,而是直接切到了MainActivity。
任何人都對為什么以及如何制作它有一些建議,以便在影片完成后,它會在不使用按鈕的情況下重定向/轉換到 MainActivity ?
到目前為止,這是我的代碼:
GlobeActivity(我的 SecondActivity):
package com.example.testerino2022
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.TextView
class GlobeActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_globe)
supportActionBar?.hide()
val textView = findViewById<TextView>(R.id.textGlobeScreen)
textView.animate().translationX(1050F).setDuration(1000).setStartDelay(2500)
val intent = Intent(this, MainActivity::class.java)
startActivity(intent)
finish()
}
}
MainActivity(有默認代碼);
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
uj5u.com熱心網友回復:
您可以使用影片偵聽器
textView.animate().translationX(1050F).setDuration(1000).setStartDelay(2500).setListener(
object: Animator.AnimatorListener{
override fun onAnimationStart(p0: Animator?) {
TODO("Not yet implemented")
}
override fun onAnimationEnd(p0: Animator?) {
val intent = Intent(this, MainActivity::class.java)
startActivity(intent)
finish()
}
override fun onAnimationCancel(p0: Animator?) {
TODO("Not yet implemented")
}
override fun onAnimationRepeat(p0: Animator?) {
TODO("Not yet implemented")
}
}
)
uj5u.com熱心網友回復:
textView.animate()
.translationX(1050F)
.setDuration(1000)
.setStartDelay(2500)
.withEndAction {
startActivity(Intent(context, MainActivity::class.java))
finish()
}
uj5u.com熱心網友回復:
您是否將應用程式清單中的啟動器活動從 MainActivity 更改為 GlobeActivity?
uj5u.com熱心網友回復:
ViewPropertyAnimator您可以使用您已經在使用的東西輕松地做到這一點- 只需添加withEndAction:
textView.animate()
.translationX(1050F)
.setDuration(1000)
.setStartDelay(2500)
.withEndAction {
startActivity(Intent(context, MainActivity::class.java))
finish()
}
uj5u.com熱心網友回復:
假設是 ImageView,您應該聽正在影片的視圖或元素。您可以使用 ViewPropertyAnimator 執行此操作。
ImageView imageview = findViewById(R.id.imageView);
imageView.animate()
.translationX(1050F)
.setDuration(2000)
.setStartDelay(1000)
.withEndAction {
startActivity(Intent(context, MainActivity::class.java))
finish()
}
解釋
translationX(float value)- 此方法將導致 View 的 translationX 屬性影片到指定的值setDuration(long duration)- 設定為請求的屬性設定影片的底層影片器的持續時間。setStartDelay(long startDelay)- 為為請求的屬性設定影片的底層影片器設定 startDelay。withEndAction(Runnable runnable)- 指定下一個影片結束時發生的動作。
有關這方面的更多資訊,請查看:-> ViewPropertyAnimator
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/463422.html
下一篇:當談到Kotlin中的封裝時,大多數變數是否可以像Java那樣是公共的,因為它具有getter和setter屬性?
