如何从包含的Activity类启动结果的意图(startActivityForResult)

时间:2011-06-14 23:01:50

标签: android android-intent android-activity android-context

这是对我上一个问题的跟进: How to Start an Intent from a contained class of an Activity

基本上,我意识到我需要从一个包含的Activity类中调用startActivityForResult(而不是startActivity)。上一个问题的答案将Context从Activity类传递给包含的类。但是,单独使用上下文不足以调用StartActivityForResult

最好的方法是什么?我是否必须将整个Activity类传递给包含的类中的方法?

2 个答案:

答案 0 :(得分:2)

是。将您的Activity作为参数传递给包含的类。

P.S。不要存储对Activity的引用。根据需要传递它。

答案 1 :(得分:1)

那么,看看你的问题,你应该能够做到这一点:

Class TestLauncher
{
   public TestLauncher (Context c)
   {
      Intent i = new Intent(MainActivity.this, YourActivity.class)
      MainActivity.this.startActivityForResult(i, 1);
   }
}

试一试,看看它是否有效。