日期字段不可编辑

时间:2014-06-02 11:25:25

标签: blackberry j2mepolish

我正在使用J2ME polish 2.1.2并尝试将Blackberry的net.rim.device.api.ui.component.DateField添加到tableItem。它显示正确,但即使将其设置为可编辑后,我也无法更改任何内容。还有其他人有这种经历吗?

this = tableItem

 tfInput = new DateField(_meta.Title, System.currentTimeMillis(), mode);
 //#style textInputCell
    this.set(0, 0, tfInput);      
    this.setSelectionMode(TableItem.SELECTION_MODE_CELL);

编辑:这样做的原因是,如果您使用J2ME polish的DateField,Blackberry上的Datefield.TIME输入模式会出现问题。

1 个答案:

答案 0 :(得分:0)

该问题的解决方法是扩展J2ME Polish的DateField并在将模式设置为TIME时进行拦截,如下所示:

public class MyDateField extends DateField{

    public MyDateField (String title, int mode){
        super(title, mode);
        // Blackberry has bug in time mode, so going for date time instead and formatting date
        if (mode == DateField.TIME){
            super.setInputMode(DateField.DATE_TIME);
            super.setDateFormatPattern("HH:mm");
        }
    }
}

现在您可以有效地将DATE_TIME用作TIME。