在fragmnet中添加日期选择器

杂凑

如何在片段中添加日期选择器?

我在SO上找到了一些答案,展示了如何使用DialogFragment具有DatePicker。但是当我将getSupportFragmentManager()添加到我的fragmnet时,它给出了错误。

请帮我...

public class Fragment_addStudentDetails extends Fragment implements View.OnClickListener {

EditText fName,mName, Address, sName, hNo, mNo, presentSpo;
Button save;
DatabaseAdapter databaseHelper;
private ImageButton ib;


@Override
public View onCreateView(LayoutInflater inflater,
                         ViewGroup container, Bundle savedInstanceState) {
    View view=inflater.inflate(R.layout.fragment_add_student_details,container,false);
    fName = (EditText) view.findViewById(R.id.enterFname);
    mName = (EditText) view.findViewById(R.id.enterMname);
    sName = (EditText) view.findViewById(R.id.enterSureName);
    Address =(EditText) view.findViewById(R.id.enterAddress);
    hNo = (EditText) view.findViewById(R.id.entertph);
    mNo = (EditText) view.findViewById(R.id.entertpm);
    presentSpo = (EditText) view.findViewById(R.id.enterpres_sport);

    save = (Button) view.findViewById(R.id.btnsavefrag);

    save.setOnClickListener(this);

    databaseHelper = new DatabaseAdapter(getActivity());

    return view;
}

@Override
public void onClick(View v) {
    switch (v.getId()){
        case R.id.btnsavefrag:
        addStudent(v);
        break;
        case 1:

        break;
}
}
public void showDatePickerDialog(View v) {
    new DatePickerFragment((EditText) v).show(getSupportFragmentManager(), "datePicker");
}

public void addStudent(View view){
    String fname = fName.getText().toString();
    String mname = mName.getText().toString();
    String sname = sName.getText().toString();
    String address = Address.getText().toString();
    String TPhome = hNo.getText().toString();
    String TPmobile = mNo.getText().toString();
    String presentsport = presentSpo.getText().toString();

    long id= databaseHelper.insertData(fname, mname, sname, address, TPhome, TPmobile, presentsport);
    if(id<0){
        Message.message(getActivity(),"Error inInsertiong Data");
    }else
    {
        Message.message(getActivity(),"Succecsfuly inserted to data");

    }
}

public void viewDetails(View view){
    String data = databaseHelper.getAllData();
    Message.message(getActivity(),data);
}
}

我的日期选择器Fragmnet类

public class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {

public EditText activity_edittext;

public DatePickerFragment(EditText edit_text) {
    activity_edittext = edit_text;
}

@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);
}

@Override
public void onDateSet(DatePicker view, int year, int month, int day) {
    activity_edittext.setText(String.valueOf(month + 1 ) + "/" + String.valueOf(day) + "/" + String.valueOf(year));
}
}

活动课

 public class Group_Add_Details_menu extends Activity{

Fragment fragment;
Button btnFragment1, btnFragment2, btnFragment3, btnFragment4;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.add_detal_menu);
    btnFragment1 = (Button)findViewById(R.id.btn1);
    btnFragment2 = (Button)findViewById(R.id.btn2);
    btnFragment3 = (Button)findViewById(R.id.btn3);
    btnFragment4 = (Button)findViewById(R.id.btn4);

    btnFragment1.setBackgroundResource(R.drawable.add_sbutton_pressed);
    btnFragment2.setBackgroundResource(R.drawable.add_tbutton_pressed);
    btnFragment3.setBackgroundResource(R.drawable.add_pbutton_pressed);
    btnFragment4.setBackgroundResource(R.drawable.view_button_pressed);

    // get an instance of FragmentTransaction from your Activity
    FragmentManager fragmentManager = getFragmentManager();
    FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();

    //add a fragment
    Fragment_addStudentDetails myFragment = new Fragment_addStudentDetails();
    fragmentTransaction.add(R.id.myfragment, myFragment);
    fragmentTransaction.commit();

    btnFragment1.setOnClickListener(btnFragmentOnClickListener);
    btnFragment2.setOnClickListener(btnFragmentOnClickListener);
    btnFragment3.setOnClickListener(btnFragmentOnClickListener);
    btnFragment4.setOnClickListener(btnFragmentOnClickListener);
}

Button.OnClickListener btnFragmentOnClickListener = new Button.OnClickListener(){

    @Override
    public void onClick(View v) {

        Fragment newFragment;

        // Create new fragment
        if(v == btnFragment1){
            newFragment = new Fragment_addStudentDetails();

        }else{
            newFragment = new Group_Add_test();
        }

        // Create new transaction
        FragmentTransaction transaction = getFragmentManager().beginTransaction();

        // Replace whatever is in the fragment_container view with this fragment,
        // and add the transaction to the back stack
        transaction.replace(R.id.myfragment, newFragment);
        transaction.addToBackStack(null);

        // Commit the transaction
        transaction.commit();
    }};

    }
Rod_Algonquin
cannot resolve method 'getSupportFragmentManager()' 

这意味着,您使用的是不同类型的片段的这是default FragmentAndroid的,而不是support fragment支持库

解决方案:

确保您的导入看起来像这样:

import android.support.v4.app.Fragment;

编辑:

由于您使用,Activity这是默认的android活动,getFragmentManager()而不是您需要使用的支持,而不是getSupportFragmentManager()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在日期选择器中添加日期的问题

来自分类Dev

在动态添加的输入中添加日期选择器

来自分类Dev

使用Swift在UIActionsheet中添加日期选择器

来自分类Dev

如何在JSP中添加日期选择器

来自分类Dev

如何在日期选择器日历中添加时间?

来自分类Dev

在jQuery Mobile UI中添加日期选择器

来自分类Dev

如何添加日历,日期选择器?

来自分类Dev

添加日期时间选择器?

来自分类Dev

我如何在列项目日期的 jtable 中添加日期选择器和时间选择器?

来自分类Dev

在日期选择器中设置日期

来自分类Dev

日期选择器中的日期 fromat

来自分类Dev

如何在日期选择器中添加预先选择的日期

来自分类Dev

在一个ajax链式选择框中添加一个日期选择器

来自分类Dev

从日期选择器中获取价值

来自分类Dev

从片段中调用日期选择器

来自分类Dev

angularjs中的日期范围选择器

来自分类Dev

在日期选择器中传输值

来自分类Dev

从日期选择器中获取价值

来自分类Dev

Silverstripe中的日期选择器

来自分类Dev

iOS中的日期选择器

来自分类Dev

引导日期选择器中的按钮

来自分类Dev

表单中的日期选择器

来自分类Dev

添加日期日期选择器JS

来自分类Dev

我想在离子框架中添加一个日期选择器

来自分类Dev

如何在动态创建的行中添加日期选择器

来自分类Dev

添加日期选择器以过滤数据表中的数据

来自分类Dev

jQuery日期时间选择器未显示在添加有jQuery的输入字段中

来自分类Dev

如何在Android中添加两个日期选择器?

来自分类Dev

如何在MVC的jqGrid中添加日期选择器和内联编辑?