package com.project.fplus.fplusapp import android.annotation.SuppressLint import android.app.ActivityOptions import android.content.Intent import android.os.Build import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.os.Handler import android.widget.TextView import androidx.annotation.RequiresApi import com.project.fplus.fplusapp.Model.UserManager import androidx.core.os.HandlerCompat.postDelayed import kotlinx.android.synthetic.main.activity_splash_screen.* class SplashScreenActivity : AppCompatActivity(){ private var mManager: UserManager? = null private var handler: Handler? = null private var runnable: Runnable? = null private var delay_time: Long = 0 private var time = 2000L @RequiresApi(Build.VERSION_CODES.LOLLIPOP) @SuppressLint("WrongViewCast") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_splash_screen) mManager = UserManager(this@SplashScreenActivity) var txtLoading = findViewById(R.id.txt_load) mManager!!.userName?.let { nextActivity(txtLoading, it) } } @RequiresApi(Build.VERSION_CODES.LOLLIPOP) fun nextActivity(txtLoading:TextView,getUser:String) { handler = Handler() if (getUser.equals("What ?")) runnable = Runnable { val intent = Intent(this, LoginActivity::class.java) val options = ActivityOptions .makeSceneTransitionAnimation( this, im_fa_thai, getString(R.string.transition_activity_recipe_detail_text) ) startActivity(intent, options.toBundle()) } else runnable = Runnable { val intent = Intent(this, MainActivity::class.java) val options = ActivityOptions .makeSceneTransitionAnimation( this, im_fa_thai, getString(R.string.transition_activity_recipe_detail_text) ) startActivity(intent, options.toBundle()) } } public override fun onPause() { super.onPause() handler!!.removeCallbacks(runnable) } public override fun onResume() { super.onResume() delay_time = time handler!!.postDelayed(runnable, delay_time) time = System.currentTimeMillis() } override fun onStop() { super.onStop() finish() } }