当我在 android 上编写我的活动时,我必须重写很多“生命周期”方法,例如onCreate
,onActivityResult
:
class MyAcitivity extends Activity {
@Override
public void onCreate(...) {}
@Override
public void onStart(...) {}
@Override
public void onActivityResult(...) {}
@Overide
public void onBackPressed(...) {}
}
我不喜欢这样,因为我发现我的逻辑代码被拆分到课堂上的任何地方。我在这种方法中做了一些操作,但我必须在另一种方法中处理结果。
像这样设计 Activity 是唯一的方法吗?有没有其他解决方案可以让我在不覆盖超类方法的情况下做同样的事情?
更新
我在这种方法中做了一些操作,但我必须在另一种方法中处理结果。
例如:
public void onCreate(...) {
startActivityForResult(new Intent(this, AnotherAcitity.class), INTENT_ANOTHER);
}
public void onActivityResult(...) {
if(requestCode == INTENT_ANOTHER) {
// do something
}
}
再次更新
我知道如何使用这些生命周期方法,我在想的是“设计”。是否有任何不同的方式来设计android(理论上)而不用“覆盖生命周期方法”来编写活动。手机上的ios和win8是和android一样的设计吗?如果我开发一个 ios 或 win8 应用程序,我是否必须像在 android 上那样覆盖各种生命周期方法?