Java 使用BaseActivity在创建时执行代码来扩展活动?
我有许多活动需要在创建时执行一些代码,这些代码与显示首选项有关,例如不同的主题、隐藏状态栏等 这是其中一个活动的示例:Java 使用BaseActivity在创建时执行代码来扩展活动?,java,android,Java,Android,我有许多活动需要在创建时执行一些代码,这些代码与显示首选项有关,例如不同的主题、隐藏状态栏等 这是其中一个活动的示例: public class MainActivity extends BaseActivity { @Override protected void onCreate(Bundle savedInstanceState) { } } 基本活动依次具有以下代码: public class BaseActivity extends Activity{
public class MainActivity extends BaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
}
}
基本活动依次具有以下代码:
public class BaseActivity extends Activity{
// getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
// System.out.println("BaseActivity");
}
我试图在create上运行一些代码,但我无法做到这一点。如何使用BaseActivity尽快从上面运行代码?在childs onCreate方法中调用super.onCreate(Bundle Bundle)以调用父对象的onCreate
从活动中提取代码以在其他活动中重用是一种常见做法
e、 g:
我个人经常这样做,但我通常更喜欢以下内容,以获得更好的可维护代码:
组合重于继承
在childs onCreate方法中调用super.onCreate(Bundle Bundle)来调用父对象的onCreate
从活动中提取代码以在其他活动中重用是一种常见做法
e、 g:
我个人经常这样做,但我通常更喜欢以下内容,以获得更好的可维护代码:
组合重于继承
你的代码毫无意义。您正在MainActivity中重写onCreate,但在BaceActivity中显示OnCreateOptions菜单的代码。User2381750具有从MainActivity调用BaseActivity onCreate方法的正确答案。请记住,超级调用必须是方法中的第一个代码(不能在超级调用之上声明变量)。这只是为了说明我想做什么。我之所以使用oncreate,是因为我认为这是尽快运行两行代码的好方法。oncreateoptions菜单不是尽快调用代码的地方,您应该关注活动生命周期或片段生命周期,因为您的代码毫无意义。您正在MainActivity中重写onCreate,但在BaceActivity中显示OnCreateOptions菜单的代码。User2381750具有从MainActivity调用BaseActivity onCreate方法的正确答案。请记住,超级调用必须是方法中的第一个代码(不能在超级调用之上声明变量)。这只是为了说明我想做什么。我之所以使用oncreate,是因为我认为这是尽快运行两行代码的好方法。oncreateoptions菜单不是尽快调用代码的地方,您应该关注活动生命周期或片段生命周期,谢谢!我一个月前开始学习java。这对我有很大帮助,汉克斯!我一个月前开始学习java。这对我有很大帮助
public class MainActivity extends BaseActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.v(TAG,"MainActivity");
}
}
public class BaseActivity extends Activity{
protected static final String TAG = "TAG";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.v(TAG,"BaseActivity");
}
}