您现在的位置是:主页 > news > 做企业网站织梦和wordpress哪个好/品牌营销策略论文
做企业网站织梦和wordpress哪个好/品牌营销策略论文
admin2025/5/5 15:57:02【news】
简介做企业网站织梦和wordpress哪个好,品牌营销策略论文,天津市住房和城乡建设网站,eclipse可以做门户网站嘛角色 Android SDK里有自己的Activity栈管理器,但是我们无法调用,所有只能自己用一个堆栈来管理Activity。这个类的主要任务是进行应用的Activity入栈,出栈,获取当前Activity,finish掉在当前栈的所有Activity,退出应用 …
做企业网站织梦和wordpress哪个好,品牌营销策略论文,天津市住房和城乡建设网站,eclipse可以做门户网站嘛角色 Android SDK里有自己的Activity栈管理器,但是我们无法调用,所有只能自己用一个堆栈来管理Activity。这个类的主要任务是进行应用的Activity入栈,出栈,获取当前Activity,finish掉在当前栈的所有Activity,退出应用 …
角色
Android SDK里有自己的Activity栈管理器,但是我们无法调用,所有只能自己用一个堆栈来管理Activity。这个类的主要任务是进行应用的Activity入栈,出栈,获取当前Activity,finish掉在当前栈的所有Activity,退出应用
实现
import android.annotation.SuppressLint
import android.app.Activity
import android.app.ActivityManager
import android.content.Context
import java.util.*/*** Created by Newterk on 2018/2/6.*/
class AppManager private constructor(){
// activity管理栈private val activityStack: Stack<Activity> = Stack()companion object {val instance : AppManager by lazy { AppManager() }}/*** 入栈*/fun addActivity(activity: Activity){activityStack.add(activity)}/*** 出栈*/fun finishActivity(activity: Activity){activity.finish()activityStack.remove(activity)}/*** 当前activity,也就是栈的最后一位元素*/fun currentActivity(): Activity{return activityStack.lastElement()}/*** 清理栈*/fun finishAllActivity(){for(activity in activityStack){activity.finish()}activityStack.clear()}/*** 退出应用*/@SuppressLint("MissingPermission")fun exitApplication(context: Context){finishAllActivity()val activityManager:ActivityManager = context.getSystemService(Context.ACTIVITY_SERVICE) as ActivityManageractivityManager.killBackgroundProcesses(context.packageName)System.exit(0)}
}
使用
入栈,出栈操作是每个Activity都要调用的,所有最好的办法是放在自己封装的Activity基类上。
open class BaseActivity :RxAppCompatActivity(){override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)AppManager.instance.addActivity(this)}override fun onDestroy() {super.onDestroy()AppManager.instance.finishActivity(this)}
}
应用在双击退出的一个场景
class RegisterActivity : BaseMvpActivity<RegisterPresenter>(),RegisterView {private var timeTemp: Long = 0..../*** 双击back键退出应用*/override fun onBackPressed() {val currentTime = System.currentTimeMillis()if ((currentTime-timeTemp)>2000){toast("再点击一次退出应用")timeTemp = currentTime}else{AppManager.instance.exitApplication(application)}}
}