如何在非Activity类中,跳转到另外一个Activity类(context.startActivity(intent); )
来源:互联网 发布:天刀阿暖捏脸数据 编辑:程序博客网 时间:2024/05/22 10:37
1.从一个Activity跳转到另一个Activity,代码如下:
Intent intent = new Intent(当前Activity.this, 跳转到的Activity.class);startActivity(intent);
2.在非Activity下,例如自定义adapter中,无法使用startActivity(intent);方法。此时,我们需要定义一个运行上下文来启动页面跳转:
private Context mContext;Intent intent= new Intent(mContext, 跳转到的Activity.class); mContext.startActivity(intent);
运行代码会发现,会报错,主要的Logcat信息如下:
发生错误原因分析:
Context的startActivity方法,需要开启一个新的task。如果使用 Activity的startActivity方法,不会有任何限制,因为Activity继承自Context,重载了startActivity方法。
解决方法:
按照错误提示,添加一个FLAG_ACTIVITY_NEW_TASK flag
intent.setClass(mContext, 跳转到的Activity.class);intent.setFlags( Intent.FLAG_ACTIVITY_NEW_TASK);mContext.startActivity(intent);
0 0
- 如何在非Activity类中,跳转到另外一个Activity类(context.startActivity(intent); )
- 在非activity的类中调用startActivity(intent)
- 如何在非Activity类中跳转到其他Activity类中
- 在非Activity类中用Intent实现Activity跳转
- android 中从一个activity 跳转到另外一个activity
- context.startActivity(Intent intent)方法启动activity
- 在非Activity中使用startActivity:Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag
- Android在 普通类(非Activity,多数为Adapter) 中 传输数据为空值 解决方法 :在startActivity 用 intent传输数据
- 一个非Activity中跳转到一个Activity
- 解决在非Activity中使用startActivity
- 在非Activity中使用startActivity
- 解决在非Activity中使用startActivity
- android在非Activity中使用startActivity
- 解决在非Activity中使用startActivity
- 在非activity中使用startactivity
- 解决在非Activity中使用startActivity
- 解决在非Activity中使用startActivity
- 解决在非Activity中使用startActivity
- 模式识别之(一)SVM的opencv3.0实现
- tmk吃汤饭
- GPA HDU 4802
- 【Java】Java中的swap
- 凑平方数
- 如何在非Activity类中,跳转到另外一个Activity类(context.startActivity(intent); )
- Eloquent JavaScript 笔记 四:Objects and Arrays
- 绘图软件origin8.5使用总结
- Ubuntu下如何修改文件或者文件夹的权限
- 在vs2013中安装qt5插件并运行第一个opengl程序
- ListView多条目加载
- JUnit测试基本概念
- myeclipse中.properties文件不能输入中文的解决办法
- Oracle 随机数