在对话框中单击按钮时将今天的日期传递给 EditText 变量



我正在尝试将今天的日期(单击"使用日期"按钮时正在捕获(传递给要显示为输入的 EditText 变量。 我有以下代码:

btnOK.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Create New Bowler
Series newSeries = new Series();
// Set Variables To Match User Entry On The Form
newSeries.setTitle(editTitle.getText().toString());
// Apply Date As Series Name
SimpleDateFormat TodaysDate = new SimpleDateFormat("d-MM-yyyy", Locale.ENGLISH);
EditText.setText(R.id.editTitleSeries+TodaysDate.toString());
// Reference To BowlerActivity
SeriesActivity callingActivity = (SeriesActivity) getActivity();
// Pass Bowler Back To BowlersActivity
callingActivity.createNewSeries(newSeries);
// Quit the dialog
dismiss();
}
});

但是,我在.setText上收到以下错误;错误:非静态方法setText(CharSequence(无法从静态上下文引用。 我理解错误,但我无法解决为什么会出现这种情况。 我也不相信我试图获取日期的方式是正确的。

任何帮助将不胜感激。

如果要格式化日期,请执行以下操作:

private String getDateNow() {
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("d-MM-yyyy", Locale.ENGLISH);
return sdf.format(cal.getTime());
}

现在您可以像这样设置日期值:

String dateNow = getDateNow();
myEditText.setText(dateNow);

顺便说一句::我完全不知道你想用这个实现什么:

??EditText.setText(R.id.editTitleSeries+TodaysDate.toString());??

如果您经常使用不同格式的日期,则值得努力创建一个实用程序类来维护所需的所有方法。

编辑

顺便说一句: 在您的代码中,"TodaysDate"是一个SimpleDateFormat对象,而不是一个Date对象。

最新更新