package com.example.basecore
|
|
import android.content.Context
|
import android.content.pm.PackageManager
|
|
import android.os.Bundle
|
import android.view.View
|
|
import androidx.appcompat.app.AppCompatActivity
|
import androidx.core.app.ActivityCompat
|
import androidx.core.content.ContextCompat
|
import com.example.basecore.util.sysbar.StatusBarUtils
|
|
|
abstract class BaseBindingActivity : AppCompatActivity() {
|
|
protected lateinit var mContext: Context
|
|
companion object {
|
const val PERMISSION_CODE = 10001
|
}
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
super.onCreate(savedInstanceState)
|
mContext = this
|
setContentView(getRootView())
|
initView()
|
bindDataObserver()
|
}
|
|
protected abstract fun getRootView(): View
|
protected abstract fun initView()
|
|
open fun bindDataObserver() {
|
|
}
|
|
|
protected fun transStatusBar() {
|
StatusBarUtils.transparentMode(this, true, isFullScreen = true)
|
}
|
|
open fun requestPermission(permissionList: List<String>) {
|
val list = mutableListOf<String>()
|
|
for (permission in permissionList) {
|
//判断是否已经授权
|
if (ContextCompat.checkSelfPermission(this, permission) !=
|
PackageManager.PERMISSION_GRANTED
|
) {
|
list.add(permission)
|
}
|
}
|
if (list.size > 0) {
|
ActivityCompat.requestPermissions(this, list.toTypedArray(), PERMISSION_CODE)
|
}
|
}
|
}
|