我最近发现了一个可以解决我的后台服务问题的代码,但我不明白其中的一部分。你能告诉我我应该在中写什么!calledOtherActivity ?这个部分在我的代码中是红色的,提示说:“无法解析符号'称为其他活动'”
代码
@Override
public void onPause() {
if(!isFinishing()){
if(!calledOtherActivity){
stopService(serviceRef);
}
}
}
答案 0 :(得分:1)
让我们了解情况
if( condition )
{
// if condition is true it goes here
}
else
{
// bah condition is false meaning !true
}
如果上述语句中的 condition 为 false ,则 else块中的语句将始终执行。 如果它是 true 它会像我评论的那样进入它内部
此条件只能是 true 或 false
并且由于你只有一个名为calledOtherActivity
的条件,它需要携带true或false,因此它是一个布尔值
private boolean calledOtherActivity;
默认情况下,其值为 false
根据你的情况看if(!calledOtherActivity)
正如我所说的那样,它必须是真的
!
< ---这是NOT运算符,反转布尔值
因此,如果您使用 false 值传递calledOtherActivity,因为此NOT运算符条件的完整输出变为 true