我的代码段如下:
switch (status.getStatusCode()) {
case LocationSettingsStatusCodes.SUCCESS:
Log.d("Location", "onResult: success");
case LocationSettingsStatusCodes.RESOLUTION_REQUIRED:
Log.d(TAG, "onResult: resolution needed");
}
status.getStatusCode()
返回一个int,所有常量也是int
在切换块之前,我记录3个值status.getStatusCode()
为0,LocationSettingsStatusCodes.SUCCESS
为0且LocationSettingsStatusCodes.RESOLUTION_REQUIRED
为6。
但是两个Log.d
语句都被执行了。我不认为问题与我的代码有关,因为我用if-else执行了相同的逻辑。
可能是什么问题?
答案 0 :(得分:0)
你需要一个休息声明。
如果没有这个案子,案件将会落入下一个案件......
switch (status.getStatusCode()) {
case LocationSettingsStatusCodes.SUCCESS:
Log.d("Location", "onResult: success");
break;
case LocationSettingsStatusCodes.RESOLUTION_REQUIRED:
Log.d(TAG, "onResult: resolution needed");
break;
}