You can use this library for proggres;
https://github.com/Kaopiz/KProgressHUD
init progress your BaseActivity and extend from childs after you can.
class LoadingHelper(context: Context) {
private var progress: KProgressHUD = KProgressHUD.create(context)
.setStyle(KProgressHUD.Style.SPIN_INDETERMINATE)
.setLabel(context.getString(R.string.loading))
.setCancellable(false)
.setAnimationSpeed(2)
.setDimAmount(0.5f)
fun showDialog() {
if (!progress.isShowing) progress.show()
}
fun hideDialog() {
if (progress.isShowing) progress.dismiss()
}
companion object {
@Volatile
private var instance: LoadingHelper? = null
fun getInstance(context: Context) = instance ?: synchronized(this) {
instance ?: LoadingHelper(context).also { instance = it }
}
}
}
@AndroidEntryPoint
open class BaseActivity : AppCompatActivity() {
private lateinit var loadingHelper: LoadingHelper
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
loadingHelper = LoadingHelper.getInstance(this)
}
fun showLoading() {
loadingHelper.showDialog()
}
fun hideLoading() {
loadingHelper.hideDialog()
}
}