Codenameone Codename One-自定义未选定选择器组件的文本
我用模拟器(Android皮肤)在TextModeLayout中尝试了两个PickerComponents。我不喜欢字符串的PickerComponent在未选中状态下显示三个点。我也不喜欢日期的PickerComponent显示今天的日期。在这两种情况下,我都希望显示自定义文本,这也是因为我不想要默认的选定值。例如,如果我想选择出生日期,我觉得预设今天的日期没有意义 经过多次尝试,我试图用以下代码解决这个问题,但我不确定这是否是一个正确的方法。我的问题是什么是便携方式的最佳方法(对于Android和iOS都可以): 我尝试使用该方法,以便:Codenameone Codename One-自定义未选定选择器组件的文本,codenameone,Codenameone,我用模拟器(Android皮肤)在TextModeLayout中尝试了两个PickerComponents。我不喜欢字符串的PickerComponent在未选中状态下显示三个点。我也不喜欢日期的PickerComponent显示今天的日期。在这两种情况下,我都希望显示自定义文本,这也是因为我不想要默认的选定值。例如,如果我想选择出生日期,我觉得预设今天的日期没有意义 经过多次尝试,我试图用以下代码解决这个问题,但我不确定这是否是一个正确的方法。我的问题是什么是便携方式的最佳方法(对于Andro
TextModeLayout textModeLayout = new TextModeLayout(4, 1);
Container inputPersonData = new Container(textModeLayout);
TextComponent name = new TextComponent().label("Nome");
TextComponent surname = new TextComponent().label("Cognome");
PickerComponent gender = PickerComponent.createStrings("Maschio", "Femmina", "altro").label("Genere");
PickerComponent date = PickerComponent.createDate(new Date()).label("Data di nascita");
inputPersonData.add(name);
inputPersonData.add(surname);
inputPersonData.add(gender);
inputPersonData.add(date);
pickerComponentSetUnselectedText(gender, "Genere");
pickerComponentSetUnselectedText(date, "Data di nascita");
选择器组件有两个部分,其中一个文本不是本地的,但是弹出窗口是本地的(这是大多数问题的根源) 如果你所做的一切奏效,那就随它去吧。从历史上看,我们建议对picker进行子类化并重写
updateValue
,但不可能使用PickerComponent
,因此我添加了一个新方法,该方法应在下一次更新中可用:
PickerComponent cmp = new PickerComponent() {
protected Picker createPickerInstance() {
return new Picker() {
protected void updateValue() {
// place your logic here.. and invoke setText(...);
}
};
}
};
PickerComponent cmp = new PickerComponent() {
protected Picker createPickerInstance() {
return new Picker() {
protected void updateValue() {
// place your logic here.. and invoke setText(...);
}
};
}
};