How to differentiate From Which Activity the curre

2019-03-01 03:06发布

问题:

Form Activity Login I call

Intent intent=new Intent(LogIn.this,BRInfoActivity.class);

From Activity BrActivityList I Call

Intent intent=new Intent(BRActiviList.this, BRInfoActivity.class);
intent.putExtra("BRinfo", objBR);

And Now in BRInfoActivityList

Intent i = getIntent();
BrInfoEN objBR=(BrInfoEN)i.getSerializableExtra("BRinfo");

Now i want if(intent==BrActivityList)The last two above line execute otherwise does not.How to do it?

回答1:

Form Activity Login call this--

Intent intent=new Intent(LogIn.this,BRInfoActivity.class);
intent.putExtra("call_from","ActivityClass");

From Activity BrActivityList Call--

Intent intent=new Intent(BRActiviList.this, BRInfoActivity.class);
intent.putExtra("call_from", "BRActivity");

Now, when you get the intent, compare the "call_from" string in an if-else block! That's it!



回答2:

If you will start activity with startActivityForResult(). Then you can use getCallingActivity() to get caller.



回答3:

May this help you...

The new intent comes as part of onNewIntent(Intent). The original Intent is still available via getIntent().

You put whatever code you need to into onNewIntent in order to update the UI with the new parameters; probably similar to what you're doing in onCreate.

Also, you probably want to call setIntent(intent) in onNewIntent to make sure future calls to getIntent() within the Activity lifecycle get the most recent Intent data.