我是Java新手。我试图根据旋转器中的所选项添加一些天,但似乎有一个错误。
微调器中的值为:Today
,Tomorrow
,After two days
,After three days
。请有人帮帮我吗?
适用于
案例0:"今天&#34 ;;它会显示当前日期,但对于其他日期,它不起作用。
谢谢!
date_spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Calendar c = Calendar.getInstance();
rowvalue = parent.getItemAtPosition(position).toString();
switch (position){
case 0:
selectedDay = new SimpleDateFormat("yy/MM/dd").format(Calendar.getInstance().getTime());
break;
case 1:
selectedDay = c.add(Calendar.DAY_OF_MONTH, 1);
break;
case 2:
selectedDay = c.add(Calendar.DAY_OF_MONTH, 2);
break;
case 3:
selectedDay = c.add(Calendar.DAY_OF_MONTH, 3);
break;
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {}
});
答案 0 :(得分:3)
整个switch
是不必要的。您说case 0
正在运行,因此我猜您希望selectedDay
成为format
的结果。因此,请完全删除switch
并将其替换为:
if (position >= 1 && position <= 3) {
c.add(Calendar.DAY_OF_MONTH, position);
}
selectedDay = new SimpleDateFormat("yy/MM/dd").format(c.getTime());
Calendar#add
修改日历实例;然后我们在格式化selectedDay
时使用它。