召回方法 - 如何?

时间:2018-02-13 09:21:30

标签: android

我有一个活动“A”,它调用该活动中的所有方法。然后从A导航到另一个活动让我们说“B”。我正在完成“B”活动,但“A”活动方法不会被调用。完成“B”活动后如何回忆“A”活动方法

4 个答案:

答案 0 :(得分:0)

只需覆盖 onResume 方法即可在" A"活动,做任何你想做的事。

答案 1 :(得分:0)

使用以下流程来获取您要执行的操作:

这里有两种方法,比如明智的你可以创建任意数量的方法,我在这里做什么时启动 Activity_A 所有方法运行因为现在我有两个方法将运行因为这两个方法正在onCreate

进行呼叫

当您从 Activity_A 呼叫 Activity_B 时, Activity_A 将处于暂停状态, 因此,当您完成 Activity_B Activity_A 首先调用他们的onResume();时,请从onResume();

调用该方法

了解Activity LifeCycle的流程:

enter image description here

<强> Activity_A.java

  @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_a);

       init(); //this is method
       everyTimeCall(); //this is method
    }

 private void init() {
   //code here
 }

 private void everyTimeCall() {
      //code here
 }

protected void onResume() {
     super.onResume();
     everyTimeCall();// when came from Activity_B this method calls
}

<强> Activity_B.java

onBackPress()finish()

答案 2 :(得分:0)

首先阅读活动生命周期方法here。如果要调用您创建的某些方法,可以在Activity&#34; A&#34;中覆盖onResume()方法。但是这会被多次调用,或者你可以使用startActivityForResult()来启动Activity&#34; B&#34;在活动&#34; B&#34;在调用finish()之前使用setResult()方法。在活动&#34; A&#34;覆盖onActivityResult()方法并再次调用您要调用的方法。查看startActivityForResult() here

的文档

答案 3 :(得分:-1)

在活动B完成之前

startActivity(new Intent(ActivityB.this,ActivityA.class));