【发布时间】:2020-01-28 13:57:08
【问题描述】:
找不到一个好的答案。我有一堂课(没有从 MainActivity 打开。 在那里我想调用 startActivityForResult,以了解何时在 UI 上执行某些操作。 我该如何正确地做到这一点?我将活动和上下文传递给班级。 上课:
private void init(){
Intent TestIntent = new Intent();
mActivity.startActivityForResult(TestIntent,MainActivity.TEST);
}
在 MainActivity 上:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent Data) {
super.onActivityResult(requestCode, resultCode, Data);
if (requestCode == TEST){
Toast.makeText(this, "TEST", Toast.LENGTH_SHORT).show();
}
}
【问题讨论】:
-
这能回答你的问题吗? How to use StartActivityForResult()
-
为什么要类调用startActivity?将活动传递给类并不是最好的事情,因为活动可能会被销毁,而您的类仍将持有对它的引用。
-
第二个Activity结束的时候你给
setResult()打电话了吗? -
我只想从这个类中的一个事件中激活主要活动的一些东西。就像一个班级的听众。伊万,这里只有一项活动。
标签: android android-intent android-activity startactivityforresult