一直困扰我的Activity继承问题解决了。通过这样的方式继承,可以简化具有相同样式的Activity的代码。比如一个项目中会有很多自定义ActionBar的Activity顶部是只包含返回按钮和标题,在父类中实现有这些共性,返回按钮和设置标题的工作就无需在子类中再做了。只需在父类中实现点击返回时finish,设置标题的文字,子类拿过去就可以用,很方便,大大简化了代码和初始化的工作。
public abstract class BaseActivity extends Activity {
@Override
public void onCreate(bundle) {
super.onCreate(bundle);
setContentView(getLayoutResourceId());
}
protected abstract int getLayoutResourceId();
}
public class Activity1 extends BaseActivity {
@Override
public void onCreate(bundle) {
super.onCreate(bundle);
// do extra stuff on your resources, using findViewById on your layout_for_activity1
}
@Override
protected int getLayoutResourceId() {
return R.layout.layout_for_activity1;
}
}
这篇博客探讨了如何通过创建一个抽象基类BaseActivity来解决Android开发中Activity的重复代码问题。作者展示了如何在BaseActivity中实现通用功能,如自定义ActionBar,设置返回按钮和标题,从而在子类中避免重复这些工作。通过这种方式,可以提高代码复用性和项目维护性,减少子类的初始化工作。

1837

被折叠的 条评论
为什么被折叠?



