如何知道从内部视图暂停/恢复活动的时间?

时间:2013-06-19 12:12:24

标签: android android-activity android-view

从视图(自定义状态栏)我需要知道活动何时暂停和恢复。有可能吗?

2 个答案:

答案 0 :(得分:0)

有可能吗?

是的,很容易。

声明一个接口,并通过内部视图向外部活动提供其实现。 在onResume和onPause of activity中调用相应的委托来通知你的内部视图。

简单。希望这会有所帮助:)

像这样的东西

class MyActivity extends Activity {
    public interface ActivityLifeCycleLister{
        onResumeCalled();
    }

    public ActvityLifeCycleLsistener listener;

    public void setActivityLifeCycleListener(ActvityLifeCycleLsistener listener) {
        this.listener = listener;
    }

    @Override
    public void onResume(){
        super.onResume();
        if(listener != null) {
            listener.onResumeCalled();
        }
    }

    class MyInnerView extends View {

        // Some init method
        void init() {
            MyActivity.setActivityLifeCycleListener(new ActivityLifeCycleListener() {

               void onResumeCalled() {
               // Do whatever here
               }
            });
        }
    } 

}

此方法可用于您希望收听生命周期事件的应用程序的所有组件。

答案 1 :(得分:-1)

您可以创建自定义onResume()的两种onPause()View方法(无论您想要什么,都可以调用这两种方法)。然后,在您的活动中,您将覆盖onResumeonPause并致电customView.onResume()customView.onPause()