我为我所在的公司创建了一个通用的可重用类,以创建一些通用的界面元素。
该类采用与构造中相同的单个参数:应用程序上下文。
其中一种方法,ContentClickableRowWithIcon
可让您传递用作点击动作的意图。
这是完整的方法声明:
public LinearLayout ContentClickableRowWithIcon(Drawable icon, String title, Intent i, final Boolean chooser)
onClickEvent中使用的最后一个属性确定是调用选择器还是直接进入意图。
public LinearLayout ContentClickableRowWithIcon(Drawable icon, String title, Intent i, final Boolean chooser) {
LinearLayout ll = new LinearLayout(mContext);
// .. LinerLayout construction, has nothing to do with the action
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); // this is apparently getting ignored... (ps: i've tried i.setFlags as well)
final Intent intent = i;
ll.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
if(chooser)
mContext.startActivity(Intent.createChooser(intent, "Complete With...")); // crashes here with: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
else
mContext.startActivity(intent); // this works fine
}
});
return ll;
}
如评论中所述,只要我不提供使用选择器的功能,一切都可以正常工作(此列表中的所有内容都会获得一个新的活动标志,我对此很清楚,并且会在发现此问题时进行清理)
当我这样做的时候,抛出异常: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
我的想法用光了…
///编辑::值得注意的是,在调试时,当到达使用onClick动作中的意图的时间时,将Intent中的flags属性设置为268435456
addFlags和268435456
setFlags。
问题已解决,我认为这只是“操作顺序”场景的情况
这使这件事情起作用的异端是什么:
ll.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
if(chooser) {
Intent intent = Intent.createChooser(i, "Complete With");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
mContext.startActivity(intent);
} else
mContext.startActivity(i);
}
});
还向方法声明中的参数添加了“最终”修饰符
public LinearLayout ContentClickableRowWithIcon(Drawable icon, String title, final Intent i, final Boolean chooser)
当我从BroadCastReceiver启动活动时,会出现异常“从活动上下文外部调用startActivity(),需要标记_activity_NEW_TASK”。下面是我的接收代码 } 你可以看到,我已经设置了FLAG_ACTIVITY_NEW_TASK。我想指出另一件事。我从工作线程中的HTTP请求发送broadcastreceiver。代码最像这样: 有人遇到问题吗?任何帮助都很好。
我已经实现了android daydream服务,在其中我播放了一段来自asserts的视频,我在那里放了一个按钮,点击listener我想打开一个带有链接的webview,一切正常,但我无法处理webview,因为当我点击按钮时,这个消息就会出现 不幸的是,应用程序已停止 日志中出现的错误消息是 AndroidRuntime(827):致命的例外:android。util。AndroidRunt
问题内容: 我在Android的新的,试图通过一个适配器去到下一个活动,我使用同一个,下面是代码: 这是随之而来的错误: 我尝试了此解决方案,但“下一个活动”不会返回到上一个活动。 我的解决方案:(但是没有用) 以下是完整的适配器代码: 问题答案: 在你传递到构造函数应该是万军此。然后,您将不会收到此错误。
我尝试了几种解决方案,但我无法让它们中的任何一个发挥作用。 这是我的代码:
这是我的hibernate配置xml文件,我已经设置了,但仍然收到警告: 警告:不建议在没有服务器身份验证的情况下建立SSL连接。根据MySQL 5.5.45+、5.6.26+和5.7.6+的要求,如果未设置显式选项,默认情况下必须建立SSL连接。为了符合不使用SSL的现有应用程序,verifyServerCertificate属性设置为'false'。您需要通过设置usessl=false来显式