我应该使用哪个fragageManager
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我应该使用哪个fragageManager相关的知识,希望对你有一定的参考价值。
我正在使用片段并尝试创建一个表格,将日期存储在数据库中后,我可以使用日期选择器获取日期(现在没有问题),我正在按照一个指南学习如何在其中使用日期选择器的问题。碎片活动。我有两个问题(还有错误)我一直在使用This guide
并且我收到此错误:
“该类型的方法getSupportFragmentManager未定义”
我读过“片段”中没有getSupportFragmentManager,但它们在“ FragmentActivity”中
“ Fragments”中有等效的方法吗?或我应该怎么做。
我正在搜索和阅读许多指南,但这是我发现并遇到此问题的简便方法。
我将发布我的Fragment类,片段xml和datepickerfragment
FragmentClass(regventa_Fragment)..
public class Regventa_Fragment extends Fragment {
public Button guardar;
public Button fecha_button;
public Regventa_Fragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_regventa, container, false);
Toast.makeText(getActivity(), "Hola", Toast.LENGTH_SHORT).show();
return rootView;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onActivityCreated(savedInstanceState);
guardar=(Button)getView().findViewById(R.id.guardar);
//fecha_button=(Button)getView().findViewById(R.id.fecha_button);
getView().findViewById(R.id.fecha_button).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
showDatePicker();
}
private void showDatePicker() {
// TODO Auto-generated method stub
}
});
}
private void showDatePicker() {
DatePickerFragment date = new DatePickerFragment();
/**
* Set Up Current Date Into dialog
*/
Calendar calender = Calendar.getInstance();
Bundle args = new Bundle();
args.putInt("year", calender.get(Calendar.YEAR));
args.putInt("month", calender.get(Calendar.MONTH));
args.putInt("day", calender.get(Calendar.DAY_OF_MONTH));
date.setArguments(args);
/**
* Set Call back to capture selected date
*/
date.setCallBack(ondate);
date.show(getFragmentManager(), "Date Picker");
}
OnDateSetListener ondate = new OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
}
};
}
fragment_regventa.XML
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_marginTop="10dp"
android:layout_marginBottom="15dp"
android:gravity="center_horizontal" >
<Button
android:id="@+id/guardar"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/guardar" />
<Button
android:id="@+id/borrar"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/borrar" />
</LinearLayout>
<Button
android:id="@+id/fecha_button"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/fecha_venta"
android:layout_centerHorizontal="true"
android:layout_marginTop="15dp"
android:text="@string/fecha_button" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:text="@string/regventa"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/comprador"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:ems="10"
android:hint="@string/comprador" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/fecha_venta"
style="android:editTextStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/fecha_button"
android:layout_below="@+id/comprador"
android:layout_marginTop="17dp"
android:ems="10"
android:hint="@string/fecha_venta"
android:textAlignment="center"
android:textSize="17sp" />
<EditText
android:id="@+id/elevendidos"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/pesoventa"
android:layout_below="@+id/pesoventa"
android:layout_marginTop="24dp"
android:ems="10"
android:hint="@string/elementos_vendidos"
android:inputType="number" />
<EditText
android:id="@+id/pesoventa"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/comprador"
android:layout_below="@+id/fecha_button"
android:layout_marginTop="14dp"
android:ems="10"
android:hint="@string/pesoventa" />
DatePicker分段器
public class DatePickerFragment extends DialogFragment {
OnDateSetListener ondateSet;
public DatePickerFragment() {
}
public void setCallBack(OnDateSetListener ondate) {
ondateSet = ondate;
}
private int year, month, day;
@Override
public void setArguments(Bundle args) {
super.setArguments(args);
year = args.getInt("year");
month = args.getInt("month");
day = args.getInt("day");
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
return new DatePickerDialog(getActivity(), ondateSet, year, month, day);
}
}
如果我从“ Fragment”更改为“ FragmentActivity”,那会很好吗?与我有其他片段?..谢谢
我解决了问题。我正在使用
getSupportFragmentManager()
用于android支持库
首先,您需要了解FragmentActivity和Fragment之间的区别。 FragmentActivity是Activity的子类,而activity持有Fragment&两个是不同的东西。请参见下面的链接,并查看该片段不是不是从Activity继承的。
以上是关于我应该使用哪个fragageManager的主要内容,如果未能解决你的问题,请参考以下文章