我有一个活动类,它将被另外两个不同的活动类通过不同的参数调用,这个活动的工作取决于它被调用的活动类。所以我需要知道它被调用的活动类。请帮助我.
我很感谢你的帮助
我有一个活动类,它将被另外两个不同的活动类通过不同的参数调用,这个活动的工作取决于它被调用的活动类。所以我需要知道它被调用的活动类。请帮助我.
我很感谢你的帮助
如果你打电话给你的活动而startActivityForResult()
不是尝试
getCallingActivity().getClassName()
或者
您可以在intent
喜欢
里面 callingActivity1
Intent intent=new Intent(callingActivity1.this,calledActivity.class);
intent.putExtra("calledfrom","callingActivity1");
里面 callingActivity2
Intent intent=new Intent(callingActivity2.this,calledActivity.class);
intent.putExtra("calledfrom","callingActivity2");
Tarsem 给出的答案很好用。但我找到了使用共享偏好的其他方式。
当您要开始新的活动时,只需在共享首选项中存储一个字符串。
setPref = getSharedPreferences(ApprovalsActivity.PREFS_NAME,
Context.MODE_PRIVATE);
editor = setPref.edit();
editor.putBoolean("Class_Name", true);
当您在其他活动中时,只需从共享首选项中获取值
setPref.getBoolean("Class_Name", false);
您可以对此执行操作。
希望你明白。如果有任何问题,你可以问:)
YOu can pass an extra string to determine from which activity the intent is coming from. See my answer here