![](/img/trans.png)
[英]how to move from an activity to another one from outside an activity android
[英]Receive Android activity events from outside the activity?
有沒有辦法讓我們從活動外部接收諸如onResume
, onWindowFocusChanged
等事件? 當這些事件在另一個類(僅具有對活動的引用)中引發時,我想運行一些代碼。
編輯:就我而言,我無法修改Activity類,或在子類中覆蓋它。
這些方法由Android OS調用。 您可以做的最好的事情是讓Activity具有該另一個類的實例,並且您將在該類中創建類似的方法,以便該Activity在其自己的生命周期方法中進行調用。
public class SomeOtherClass {
public void onResume() {
...
}
public void onPause() {
...
}
/* other similar methods */
}
public class MyActivity extends Activity {
private SomeOtherClass someOtherClass; // make sure to initialize this somewhere
@Override
protected void onResume() {
super.onResume();
someOtherClass.onResume();
}
@Override
protected void onPause() {
super.onPause();
someOtherClass.onPause();
}
/* and so one */
}
我最后將Application.registerActivityLifecycleCallbacks
用於onResume
,將Window.getCallback()
用於onWindowFocusChanged
。 感謝@Karakuri
在評論中提到第一種方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.