使用setText onCreate将日期添加到EditText

时间:2016-02-14 13:16:14

标签: android datetime settext

所以我一直试图以两种不同的方式使用它。

首先是:

EditText dod = (EditText)findViewById(R.id.dod); 

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
String currentDateandTime = sdf.format(new Date());
dod.setText(currentDateandTime);

我收到错误:

Attempt to invoke virtual method 'void android.widget.EditText.setText(java.lang.CharSequence)' on a null object reference

尝试解决问题的第二种方法是:

    int mYear,mMonth,mDay;

    Calendar c = Calendar.getInstance(Locale.getDefault());
    mYear = c.get(Calendar.YEAR);
    mMonth = c.get(Calendar.MONTH);
    mDay = c.get(Calendar.DAY_OF_MONTH);

    dod.setText(new StringBuilder().append(mDay).append("-").append(mMonth+1).append("-").append(mYear));

在这里得到同样的错误,这是在kikat 4.4上工作所以我没有得到问题,EditText被声明和所有。

3 个答案:

答案 0 :(得分:0)

无论您使用哪种方法设置文本,都会因为

而出错
  1. setContentView中的onCreate之前有以下代码。

    EditText dod = (EditText)findViewById(R.id.dod); 
    
  2. 或者您R.id.dob中使用的布局中没有setConentView

答案 1 :(得分:0)

这可能是因为你的静物尚未建成。

替换String currentDateandTime = sdf.format(new Date());

String currentDateandTime = new String(sdf.format(new Date()));

答案 2 :(得分:0)

您获得的错误很可能是因为您没有将“dod”的ID分配给XML布局文件中的EditText