我有这个问题
并且不明白为什么原始代码是错误的。此外,稍后在活动中更令人困惑的是,我有以下使用 getActivity() 工作的代码有什么区别为什么它在一种情况下工作而不是另一种情况?
public static class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
EditText dobText = (EditText)getActivity().findViewById(R.id.editText1);
String dobStr = dobText.getText().toString();
int day = Integer.valueOf(dobStr.replaceAll("([0-9]*)/[0-9]+/[0-9]+","$1"));
int month = Integer.valueOf(dobStr.replaceAll("[0-9]+/([0-9]+)/[0-9]+", "$1"))-1;
int year = Integer.valueOf(dobStr.replaceAll("[0-9]+/[0-9]+/([0-9]+)", "$1"));
return new DatePickerDialog(getActivity(),this, year,month,day);
}
}
以及我在上一个问题中的情况与这个问题有何不同
http://developer.android.com/guide/components/fragments.html
(搜索“intent.setClass(getActivity(), DetailsActivity.class);”找到我所指的例子)