BaseActivity.java
3.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
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<VB extends ViewBinding> 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 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();
}