使用片段添加日期选择器

时间:2014-03-14 19:57:45

标签: android android-fragments datepicker

我有关于设置fragmentManager的问题。我正在开发一个具有设置页面的应用程序,其中有一个用于选择日期的按钮 我有一个日期选择器的片段和datepicker的布局。

我试图在我的行为中设置fragmentManager:

     //Setup fragment manager
    android.app.FragmentManager fm = getFragmentManager();
    //fragment transaction
    android.app.FragmentTransaction ft = fm.beginTransaction();

    //add fragments
    ft.add(R.id.dialog_date);
    ft.commit();

我遇到了ft.add部分的问题,我正在尝试为我的日期选择器添加片段布局。我不清楚这是不是正确的方法。除了日期选择器,我还添加了一个时间选择器。我是否也以同样的方式添加它?

    ft.add(R.id.timepicker)

我已使用意图设置我的按钮点击以获取日期选择器。我不认为这是调用日期选择器的正确方法。

    //button click for date. user clicks button and a date picker fragment is enabled.
    mDateButton = (Button)v.findViewById(R.id.eventDateButton);

    mDateButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent myIntent = new Intent(NewEventSetupActivity.this, DatePickerFragment.class);
            startActivity(myIntent);
        }
    });

我的设置方式是否正确?或者有更简单的方法吗?

先谢谢。

1 个答案:

答案 0 :(得分:1)

启动新片段时,您不需要使用意图。您只需使用片段管理器,如果您使用日期选择器的对话框片段,这很简单。

使用对话框片段,你的onClick可以像这样简单:

public void showDatePickerDialog(View v) {
  DialogFragment newFragment = new DatePickerFragment();
  newFragment.show(getSupportFragmentManager(), "datePicker");
}

检查一下,这是一个很好的教程,可以将一个好看的日期选择器显示为一个对话框:http://developer.android.com/guide/topics/ui/controls/pickers.html#DatePicker

祝你好运!