Tôi muốn nhúng một DatePickerDialog
bên trong chính hoạt động Android. Tôi không muốn DatePicker
xuất hiện khi được nhấp vào nút dưới dạng hộp thoại nhưng tự nhúng vào bên trong hoạt động của mình. Tôi đã thử sử dụng chế độ xem DatePicker
bên trong bố cục của mình, nhưng điều này có vẻ khác với DatePickerDialog
.Nhúng datepicker trong một Hoạt động
Tôi đang sử dụng DialogFragment
để tạo DatePickerDialog
và sử dụng đoạn mã sau vào onCreate
của MainAcitivity.java
FragmentTransaction ft = getFragmentManager().beginTransaction();
DatePickerDialogFragment datePickerDialogFragment = DatePickerDialogFragment.newInstance();
ft.add(R.id.main_screen_layout, datePickerDialogFragment); // main_screen_layout is given as the id for the layout related to MainActivity
ft.commit();
// DatePickerDialogFragment.java
public class DatePickerDialogFragment extends DialogFragment
implements DatePickerDialog.OnDateSetListener {
public static DatePickerDialogFragment newInstance() {
return new DatePickerDialogFragment();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.dialog_datepicker, container, false);
View tv = v.findViewById(R.id.tv);
((TextView)tv).setText("This is a new instance");
return v;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
Calendar c = Calendar.getInstance();
return new DatePickerDialog(getActivity(), this,
c.get(Calendar.YEAR),
c.get(Calendar.MONTH),
c.get(Calendar.DAY_OF_MONTH));
}
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
}
}
Làm thế nào để đi về điều này?
Hiện có rất nhiều bộ chọn ngày thành phần giao diện người dùng. Tại sao bạn không sử dụng một trong số này? –