开发者-钟大田 2015-04-20 08:00 采纳率: 100%
浏览 2486
已采纳

Android的Java问题如何实现这样的需求

1,为了代码比较优雅,所以我写了一个BaseActivity如下:
public abstract class BaseActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
}

/**
 * 初始化视图控件
 */
public abstract void initView();

/**
 * 设置数据
 */
public abstract void setDate();

}

2.我发现我们在实现这个抽象类时,要在 onCreate(Bundle savedInstanceState){
}中写initView();而且都是重复的,有没有办法不写initView,也可以初始化initView里的设置,让继承BaseActivity不用在onCreate()中initView()

  • 写回答

9条回答 默认 最新

  • FFISH 2015-04-22 03:26
    关注

    BaseActivity中覆盖setContentView()方法,再里面调用initView()
    @Override
    public void setContentView(int layoutResID)
    {
    // TODO Auto-generated method stub
    super.setContentView(layoutResID);
    initViews();
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(8条)

报告相同问题?

悬赏问题

  • ¥15 luckysheet
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码
  • ¥50 随机森林与房贷信用风险模型
  • ¥50 buildozer打包kivy app失败
  • ¥30 在vs2022里运行python代码
  • ¥15 不同尺寸货物如何寻找合适的包装箱型谱
  • ¥15 求解 yolo算法问题
  • ¥15 虚拟机打包apk出现错误