TitleBarActivity.java 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package com.ynstkz.shitu.android.base;
  2. import android.os.Bundle;
  3. import android.support.annotation.Nullable;
  4. import android.support.design.widget.Snackbar;
  5. import android.view.View;
  6. import android.widget.TextView;
  7. import com.ynstkz.shitu.android.R;
  8. import com.ynstkz.shitu.android.utils.StatusBarUtil;
  9. /**
  10. * 作者:fuchangle on 2018/1/27 22:25
  11. */
  12. public abstract class TitleBarActivity extends BaseActivity{
  13. private TextView mToolbarTitle;
  14. @Override
  15. protected void onCreate(@Nullable Bundle savedInstanceState) {
  16. super.onCreate(savedInstanceState);
  17. setContentView(getLayoutId());
  18. StatusBarUtil.setColor(this, getResources().getColor(R.color.colorPrimary));
  19. mToolbarTitle = findViewById(R.id.tv_title);
  20. if (mToolbarTitle != null) {
  21. //getTitle()的值是activity的android:lable属性值
  22. mToolbarTitle.setText(getTitle());
  23. //设置默认的标题不显示
  24. if(getSupportActionBar() != null){
  25. getSupportActionBar().setDisplayShowTitleEnabled(false);
  26. }
  27. }
  28. }
  29. /**
  30. * 获取头部标题的TextView
  31. * @return
  32. */
  33. public TextView getToolbarTitle(){
  34. return mToolbarTitle;
  35. }
  36. /**
  37. * 设置头部标题
  38. * @param title
  39. */
  40. public void setToolBarTitle(CharSequence title) {
  41. if(mToolbarTitle != null){
  42. mToolbarTitle.setText(title);
  43. }
  44. }
  45. /**
  46. * 是否显示后退按钮,默认显示,可在子类重写该方法.
  47. * @return
  48. */
  49. protected boolean isShowBacking(){
  50. return true;
  51. }
  52. protected abstract int getLayoutId();
  53. protected void showToast(View view, String msg){
  54. Snackbar.make(view, msg, Snackbar.LENGTH_LONG).show();
  55. }
  56. }