我正在使用android注释,并且我需要在我的活动中的onResume()函数中执行一些代码。
从android注释活动中覆盖onResume函数是否安全(即使用@EActivity)?
答案 0 :(得分:5)
是的,您应该像使用简单的Android活动一样使用这些生命周期方法。但有一件事:onCreate
方法尚未提供injected View
s,这就是@AfterViews
存在的原因:
@EActivity(R.layout.views_injected)
public class ViewsInjectedActivity extends Activity {
@ViewById
Button myButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// myButton is not yet available here
}
@AfterViews
void setupViews() {
// myButton is first available here
myButton.setText("Hello");
}
@Override
protected void onResume() {
super.onResume();
// just as usual
}
}
答案 1 :(得分:2)
呀。只需致电z-index
,然后添加您的代码。
我就像他们在这里创建示例一样:https://github.com/excilys/androidannotations/wiki/Enhance-activities
答案 2 :(得分:0)
您可以将自定义类与android的生命周期组件绑定。它包含android组件的生命周期信息,以便您的自定义类观察生命周期的变化。
public class MyObserver implements LifecycleObserver {
@OnLifecycleEvent(Lifecycle.Event.ON_RESUME)
public void connectListener() {
...
}
@OnLifecycleEvent(Lifecycle.Event.ON_PAUSE)
public void disconnectListener() {
...
}
}
myLifecycleOwner.getLifecycle().addObserver(new MyObserver());