拥有好不好BaseActivity
类,它将作为所有其他活动的超级类。我需要这个来为活动提供一些通用的实现。
基础活动:
public class BaseActivity extends Activity
{
//All Common implementations goes here
}
活动
public class HomeActivity extends BaseActivity
{
}
在这种情况下,我建议有一个基本的抽象活动和两个具体的继承子类。您在基本活动中定义所有常见行为,并为差异提供抽象方法,然后在实际实现中覆盖这些方法。
例如,对于具有不同布局资源的两个活动:
public abstract class BaseActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(getLayoutResourceId());
}
protected abstract int getLayoutResourceId();
}
public class Activity1 extends BaseActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); // do extra stuff on your resources, using findViewById on your layout_for_activity1
}
@Override
protected int getLayoutResourceId(){
return R.layout.layout_for_activity1;
}
}
对于您想要特定于子类的每一个位,您可以拥有更多的抽象方法。
在我看来,这样做比拥有具体超类的具体子类要好得多:这可能会导致许多问题,并且通常难以调试。
快乐编码。让我知道需要更多帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)