get activity()。finish()不杀死活动

时间:2015-09-15 16:19:16

标签: android

我有一个启动器活动A调用活动B.B有多个片段。现在我想要的是能够从其中一个片段中杀死B.我使用getActivity().finish()但它会杀死片段。

如何从片段中删除活动/退出应用程序?

3 个答案:

答案 0 :(得分:1)

在文档中讨论了一种方法:http://developer.android.com/training/basics/fragments/communicating.html

Fragment定义Activity实现的接口。然后调用Activity,然后让Activity完成(或其他)。

public class MyActivity extends Activity 
    implements MyFragment.MyListener {

    public void onMyCancel() {
       finish();
    }
}


public class MyFragment extends Fragment {
   private MyListener callback;

   @Override
   public void onAttach(Activity activity) {
     super.onAttach(activity);
     callback= (MyListener) activity;
   }

   public interface MyListener {
       public void onMyCancel();
   }

   public void btnCancel(View v) {
      callback.onMyCancel();
   }
}

答案 1 :(得分:0)

您只能在活动B中拨打完成(),这会关闭您当前的活动。

答案 2 :(得分:-2)

如果您想关闭应用,只需使用:

System.exit(0);

这会杀死整个申请流程。