Determine if app was launched from home screen?

后端 未结 2 1490
礼貌的吻别
礼貌的吻别 2021-01-15 05:50

In my main activity, onCreate I set a textView to the current date. From that activity, I startActivityForResult activity2, where I can change the date. onActivityResult, I

2条回答
  •  抹茶落季
    2021-01-15 06:03

    How about something like this:

    First of all, create an onSaveInstanceState(Bundle) method and save the current contents of the date TextView to it. This is called before Android stops, hides, or destroys your activity.

    When you start activity2, your onStop() of activity1 will be called. In there, set a flag to indicate whether or not onStop() is called due to you starting a new activity (make the intent for activity2 a member, not local variable for this). Ensure you save this flag in onSaveInstanceState of activity1.

    Implement onRestoreInstanceState(Bundle) in activity1, and restore to local variables the date and flag values.

    Finally, in onResume of activity1, check the flag - it you are resuming because you are returning from activity2, do not change the TextView since that will be set in onActivityResult, otherwise, you can safely restore the saved date value.

提交回复
热议问题