У меня есть кнопка, которая подтягивает фрагмент DatePicker, но я не могу понять, как изменить вид в зависимости от выбранной даты. Я поместил метод onDateSet в свой main.java, который является активностью, вызывающей фрагмент, с намерением изменить вид внутри этого метода, но ничего не делает, когда изменяется дата, и я не уверен, что я делаю неправильно.DatePicker изменение вид после даты выбрано
public class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {
@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);
// Create a new instance of DatePickerDialog and return it
return new DatePickerDialog(getActivity(), this, year, month, day);
}
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
}
и мой MainScreen.java является
public class MainScreen extends FragmentActivity implements DatePickerDialog.OnDateSetListener {
static final int DATE_DIALOG_ID = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_screen);
}
public void showDatePickerDialog(View v) {
DatePickerFragment newFragment = new DatePickerFragment();
newFragment.show(getFragmentManager(), "datePicker");
}
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
Intent intent = new Intent(this, January_1.class);
startActivity(intent);
}
}
Почему бы» t вы переместите код 'onDateSet()' из основного Actvity в ваш DatePickerFragment? – Sam
@Sam С тех пор как вы избили меня до этого, продолжайте и поставьте это как ответ. Он установил, что его слушатель является «этим», который является объектом «Фрагмент», а его код находится в «Деятельности». – Eric