我已经实现了 ListView 在我的 Android 应用程序中。我绑定(bind)到这个 ListView 使用 ArrayAdapter 的自定义子类类(class)。在被覆盖的 ArrayAdapter.getView(...) 内部方法,我分配一个 OnClickListener .在 onClick OnClickListener 的方法,我想发起一个新的 Activity 。我得到了异常(exception):
Calling startActivity() from outside of an Activity context requires the
FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
我怎样才能得到 Context 该ListView (当前 Activity )正在工作?
Best Answer-推荐答案 strong>
任何一个
通过适配器中的构造函数缓存 Context 对象,或 从你的角度得到它。 或者作为最后的手段, 在您的 Intent 中添加 - FLAG_ACTIVITY_NEW_TASK 标志: _
myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
编辑 - 我会避免设置标志,因为它会干扰事件和历史堆栈的正常流动。
关于android - 从 Activity 上下文之外调用 startActivity(),我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/3918517/
|