我有关于设置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);
}
});
我的设置方式是否正确?或者有更简单的方法吗?
先谢谢。
答案 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
祝你好运!