如何关闭选项卡活动组android中的子活动?

时间:2012-12-02 16:39:37

标签: android activitygroup android-tabactivity

我的父类正确地打开了一个子活动,但是当我试图用this.finish()或getCurrentActivity()关闭这个子活动时,终止()我得到一个强制关闭错误。我知道使用getParent()。finish()将关闭父活动,因此,这意味着关闭子活动是可行的。

我搜索并获取getLocalActivityManager()。我相信这是关闭标签组中儿童活动的关键。但是如何应用呢?我正在努力但却毫无结果。

这是关闭子活动的方法。

public void onClick(View v) {

    switch(v.getId()){
    case R.id.back:

        final LocalActivityManager manager = getLocalActivityManager();
        manager.getCurrentActivity().finish();

        break;

    }
}

我的Logcat

12-02 21:08:15.494: E/AndroidRuntime(27064): FATAL EXCEPTION: main

12-02 21:08:15.494: E/AndroidRuntime(27064): java.lang.NullPointerException
12-02 21:08:15.494: E/AndroidRuntime(27064):    at package.name.tabgroup.TabGroupActivity.finishFromChild(TabGroupActivity.java:49)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at android.app.Activity.finish(Activity.java:3259)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at ..itemlist.OdiamListDetails.onClick(OdiamListDetails.java:78)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at android.view.View.performClick(View.java:2538)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at android.view.View$PerformClick.run(View.java:9152)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at android.os.Handler.handleCallback(Handler.java:587)


12-02 21:08:15.494: E/AndroidRuntime(27064):    at 
android.os.Handler.dispatchMessage(Handler.java:92)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at android.os.Looper.loop(Looper.java:130)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at android.app.ActivityThread.main(ActivityThread.java:3687)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at java.lang.reflect.Method.invokeNative(Native Method)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at java.lang.reflect.Method.invoke(Method.java:507)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)

12-02 21:08:15.494: E/AndroidRuntime(27064):    at dalvik.system.NativeStart.main(Native Method)

0 个答案:

没有答案