package com.hjx.parent; import static com.xiasuhuei321.loadingdialog.view.LoadingDialog.Speed.SPEED_TWO; import android.content.Context; import android.graphics.Color; import android.os.Bundle; import android.view.View; import android.view.Window; import android.view.WindowManager; import android.widget.Toast; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import androidx.viewbinding.ViewBinding; import com.hjx.parent.dialog.TipDialog; import com.xiasuhuei321.loadingdialog.view.LoadingDialog; public abstract class BaseActivity extends AppCompatActivity { protected Context context; protected AppCompatActivity activity; protected VB binding; private LoadingDialog dialog; private TipDialog tipDialog; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); binding = getViewBinding(); setContentView(binding.getRoot()); showWhiteStatus(); context = this; activity = this; initView(savedInstanceState); } public void showLoadingDialog(String text) { dialog = new LoadingDialog(this); dialog.setLoadingText(text) .setSuccessText("成功")//显示加载成功时的文字 .setFailedText("失败") .setLoadSpeed(SPEED_TWO) .show(); } public void showLoadingDialog(String text, LoadingDialog.DismissListener listener) { if (dialog != null) dialog.close(); dialog = new LoadingDialog(this); dialog.setLoadingText(text) .setSuccessText("成功")//显示加载成功时的文字 .setFailedText("失败") .setLoadSpeed(SPEED_TWO) .show(); dialog.setDimissListener(listener); } public void loadFail(String text) { dialog.setFailedText(text); dialog.loadFailed(); } public void cancelLoadingDialog() { dialog.loadSuccess(); } public void showWhiteStatus() { Window window = getWindow(); window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); window.setStatusBarColor(Color.TRANSPARENT); } protected void hideBottomUIMenu() { Window window = getWindow(); window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); window.setStatusBarColor(Color.TRANSPARENT); } public void showToast(String text) { Toast.makeText(App.getInstance().getApplicationContext(), text, Toast.LENGTH_SHORT).show(); } public void showTipDialog(String title, String content, String cancel, String confirm, TipDialog.TipDialogInterface tipDialogInterface) { tipDialog = new TipDialog(context, title, content, confirm, cancel, tipDialogInterface); tipDialog.show(); } public abstract void initView(Bundle savedInstanceState); protected abstract VB getViewBinding(); }