使用for循环向intent添加标志是否会覆盖循环中添加的上一个标志?
例1:
我想要达到的目标
int[] flags = {Intent.FLAG_ACTIVITY_NEW_TASK, Intent.FLAG_ACTIVITY_CLEAR_TASK};
for (int flag: flags) {
intent.addFlags(flag);
}
例2:
通常如何添加标志
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
例3:
示例1中for循环的简单代码表示
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
原因:
例4:
我正在向一个方法传递标志
public void startActivity(int[] flags) {
for (int flag: flags) {
intent.addFlags(flag);
}
}
分辨率:
如果for循环覆盖了先前添加的标志,那么如何使用示例4中的方法实现示例2中的代码?
1条答案
按热度按时间2hh7jdfx1#
实际上,我并不熟悉android intent,但似乎您只是将存储在整数中的位组合起来,所以您可以这样做: