我有這個問題intent.setClass(getActivity,的.class)與意向(這,的.class)
Launching a new activity - android
,不明白爲什麼原來的代碼是錯誤的。此外,在活動後面更令人困惑,我有下面的代碼,它使用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);」 找到例如我指的是)
陛下...所以,如果我理解正確的話,我不能用'getActivity'引用一個活動我在,但我倒是應該使用'如果this'或類是匿名的內部' ActivityToReference.this'? – evan54
類Activity中沒有getActivity()方法,因爲它不會添加任何'this'已經做的事情。 但是,由於Fragment沒有從Activity繼承,所以它有'getActivity()'方法。 –