我正在使用 Android 的 DatePicker 从日历中选择特定日期。问题是我无法在 EditText 中显示我从日历中选择的日期。
这将是我的DatePickerFragment
:
public class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {
private EditText a;
private String date;
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the current date as the default date in the picker
final Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int day = c.get(Calendar.DAY_OF_MONTH);
a.findViewById(R.id.in_date);
date = "";
date = Integer.toString(day) + "/" + Integer.toString(month) + "/" + Integer.toString(year);
a.setText(date);
// Create a new instance of DatePickerDialog and return it
return new DatePickerDialog(getActivity(), this, year, month, day);
}
}
这是我正在使用的 EditText 的 xml:
< EditText
android: id = "@+id/in_date"
android: layout_width = "175dp"
android: layout_height = "wrap_content"
android: hint = "@string/choose_date"
android: importantForAutofill = "no"
android: inputType = "date|text"
android: keyboardNavigationCluster = "false" / >
每次尝试在 EditText 变量 a
上使用 .setText(date)
时,都会收到 NullPointerException
。这不是应该初始化的方式吗?
最佳答案
您没有初始化变量a
,这意味着它是null
。您得到 NullPointer
是因为它在后台执行 (null).setText(date);
EditText a = (EditText) findViewById(R.id.in_date);
关于java - 无法弄清楚为什么我在 EditText 上收到此 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59186400/