Gần đây tôi đã thêm một mục trình đơn khác vào một ứng dụng java android và được ngạc nhiên rằng Eclipse đã nói biến đó từ trường hợp trước: break không phải là cục bộ (Vì vậy, tôi vừa thêm một hậu tố để nhận).Tại sao các biến không phải là cục bộ trong trường hợp báo cáo?
Tôi hơi bối rối như trong đầu, bộ trường hợp đầu tiên: ngắt sẽ không được thực thi nếu tùy chọn thứ 2 được chọn. Ai đó có thể giải thích suy nghĩ sai lầm của tôi được không?
case R.id.menuDebugMode:
debugMode = !debugMode;
if (debugMode){
Toast.makeText(mainActivity.this, "Debug Mode on - NOT TO BE USED WHILST DRIVING", Toast.LENGTH_LONG).show();
} else {
tvDebug.setText("");
tvInfo.setText("");
}
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("debugMode", debugMode);
editor.commit();
break;
case R.id.menuSpeedMode:
speedSignMode = !speedSignMode;
if (speedSignMode){
Toast.makeText(mainActivity.this, "SpeedSign Mode in use", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(mainActivity.this, "MapSpeed Mode in use", Toast.LENGTH_LONG).show();
}
SharedPreferences settings2 = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor2 = settings2.edit();
editor2.putBoolean("speedSignMode", speedSignMode);
editor2.commit();
break;`
Cảm ơn tất cả các câu trả lời nhanh và hữu ích - Tôi đánh dấu TME là một câu trả lời được chấp nhận (vì nó có câu trả lời rõ ràng về lý do tại sao :) nhưng tất cả các câu trả lời đều là những câu trả lời hay. Tôi thường là một lập trình viên loại if else elseif vì vậy đó là lý do tại sao tôi bị bắt ở đây :) – SimpleSi