可以帮我写一个功能齐全的android的baseActivity抽象类
时间: 2023-05-11 21:02:17 浏览: 63
当然可以,以下是一个功能齐全的android的baseActivity抽象类的示例代码:
```
public abstract class BaseActivity extends AppCompatActivity {
private ProgressDialog mProgressDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(getLayoutResourceId());
initViews();
initData();
}
protected abstract int getLayoutResourceId();
protected abstract void initViews();
protected abstract void initData();
protected void showProgressDialog(String message) {
if (mProgressDialog == null) {
mProgressDialog = new ProgressDialog(this);
mProgressDialog.setCancelable(false);
}
mProgressDialog.setMessage(message);
mProgressDialog.show();
}
protected void hideProgressDialog() {
if (mProgressDialog != null && mProgressDialog.isShowing()) {
mProgressDialog.dismiss();
}
}
protected void showToast(String message) {
Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
}
protected void startActivity(Class<?> cls) {
Intent intent = new Intent(this, cls);
startActivity(intent);
}
protected void startActivity(Class<?> cls, Bundle bundle) {
Intent intent = new Intent(this, cls);
intent.putExtras(bundle);
startActivity(intent);
}
protected void startActivityForResult(Class<?> cls, int requestCode) {
Intent intent = new Intent(this, cls);
startActivityForResult(intent, requestCode);
}
protected void startActivityForResult(Class<?> cls, int requestCode, Bundle bundle) {
Intent intent = new Intent(this, cls);
intent.putExtras(bundle);
startActivityForResult(intent, requestCode);
}
}
```
这个抽象类包含了常用的方法,例如显示进度对话框、隐藏进度对话框、显示Toast、启动Activity等等。你可以继承这个抽象类,然后实现其中的抽象方法,以便在你的应用程序中使用。