settingsform.java
来自「Online Map for Mobile」· Java 代码 · 共 73 行
JAVA
73 行
import javax.microedition.lcdui.*;
public class SettingsForm extends Form implements CommandListener {
BrowserCanvas canvas;
ChoiceGroup choice;
ChoiceGroup locale;
Gauge cacheSize;
boolean[] selected;
SettingsForm(BrowserCanvas canvas) {
super(Locale.current.getResource("Settings"));
this.canvas = canvas;
int flags = canvas.browser.settings.flags;
choice = new ChoiceGroup(null,
Choice.MULTIPLE,
new String[] {
Locale.current.getResource("Fast Scroll"),
Locale.current.getResource("Auto zoom"),
Locale.current.getResource("Blinking")},
null);
selected = new boolean[]{(flags & Settings.FAST_SCROLL) != 0, (flags & Settings.AUTO_ZOOM) != 0, true};
choice.setSelectedFlags(selected);
locale = new ChoiceGroup(Locale.current.getResource("Locale"), Choice.EXCLUSIVE, Locale.SUPPORTED_LANGUAGES, null);
for (int i = 0; i < Locale.SUPPORTED_LOCALES.length; i++) {
if (Locale.SUPPORTED_LOCALES[i].equals((Locale.current.getLanguage()))) {
locale.setSelectedIndex(i, true);
break;
}
}
cacheSize = new Gauge("Cache size", true, Settings.MAX_CACHE_SIZE-1,
canvas.browser.settings.cacheSize-1);
append(choice);
append(locale);
append(cacheSize);
addCommand(MapBrowser.SAVE_CMD);
addCommand(MapBrowser.BACK_CMD);
setCommandListener(this);
Display.getDisplay(canvas.browser).setCurrent(this);
}
public void commandAction(Command c, Displayable d)
{
if (c == MapBrowser.SAVE_CMD) {
choice.getSelectedFlags(selected);
int mask = 0;
if (selected[0]) {
mask |= Settings.FAST_SCROLL;
}
if (selected[1]) {
mask |= Settings.AUTO_ZOOM;
}
if (selected[2]) {
mask |= Settings.BLINKING;
}
MapBrowser browser = canvas.browser;
browser.settings.flags = mask;
String localeName = Locale.SUPPORTED_LOCALES[locale.getSelectedIndex()];
if (!localeName.equals(browser.settings.locale)) {
browser.settings.locale = localeName;
browser.setLocale();
browser.saveSettings();
browser.showMap();
return;
}
browser.settings.cacheSize = cacheSize.getValue()+1;
browser.saveSettings();
}
Display.getDisplay(canvas.browser).setCurrent(canvas);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?