【发布时间】:2018-03-29 07:12:12
【问题描述】:
我想在片段中添加日期时间选择器,我已经尝试过了,但是当单击文本以显示日期选择器时,应用程序被强制关闭。 这是我的代码
FragmentHome.java
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view=inflater.inflate(R.layout.fragment_fragment_home,container,false);
/**spinner*/
spinner=(Spinner)view.findViewById(R.id.spinBranch);
ArrayAdapter<String> adapterSpinner= new ArrayAdapter<String>(this.getActivity(),android.R.layout.simple_spinner_item,branchView);
adapterSpinner.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
spinner.setAdapter(adapterSpinner);
/**View Pager*/
viewPager=(ViewPager)view.findViewById(R.id.viewImage);
adapter=new customSwitchAdapterHome(this.getActivity());
viewPager.setAdapter(adapter);
txtDate=(TextView)getActivity().findViewById(R.id.txtDateChooser);
return view;
}
void onClickDate(View view){
txtDate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
DialogFragment newFragment= new SelectDateFragment();
newFragment.show(getFragmentManager(),"DatePicker");
}
});
}
SelectDateFragment.java
public class SelectDateFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {
@RequiresApi(api = Build.VERSION_CODES.N)
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final Calendar calendar = Calendar.getInstance();
int yy = calendar.get(Calendar.YEAR);
int mm = calendar.get(Calendar.MONTH);
int dd = calendar.get(Calendar.DAY_OF_MONTH);
return new DatePickerDialog(getActivity(), this, yy, mm, dd);
}
public void onDateSet(DatePicker view, int yy, int mm, int dd) {
populateSetDate(yy, mm+1, dd);
}
public void populateSetDate(int year, int month, int day) {
/** set text*/
}
【问题讨论】:
-
你遇到了什么异常?
-
您尝试过什么来调试该错误?
标签: android datepicker fragment