Я успешно создал свой класс фрагмента диалога, и теперь я хотел бы назвать его из моего основного класса фрагментов, который я создал.Вызов DialogFragment
Я попытался использовать несколько кодов, чтобы позвонить, но я продолжаю получать ошибки и сбои.
Что мне нужно, чтобы поместить мой onClick, чтобы вызвать мой фрагмент диалога?
Заранее благодарен!
Главная Фрагмент Класс:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final View v = inflater.inflate(R.layout.image_detail_fragment,
container, false);
mImageView = (RecyclingImageView) v.findViewById(R.id.imageView);
mImageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
//Here
}
});
return v;
}
Диалог Фрагмент:
class MyDialogFragment extends DialogFragment {
Context mContext;
public MyDialogFragment() {
mContext = getActivity();
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
mContext);
alertDialogBuilder.setTitle("Set Wallpaper?");
alertDialogBuilder.setMessage("Are you sure?");
// null should be your on click listener
alertDialogBuilder.setPositiveButton("OK", null);
alertDialogBuilder.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
return alertDialogBuilder.create();
}
public static MyDialogFragment newInstance() {
MyDialogFragment f = new MyDialogFragment();
return f;
}
}
использования эта треска e, чтобы показать фрагмент диалога MyDialogFragment newFragment = MyDialogFragment.newInstance(); newFragment.show (getFragmentManager(), null); –
jack, что используется 'public static MyDialogFragment newInstance()', если у вас есть диалог MyDialogFragment = new MyDialogFragment() '? – Raghunandan
Возможный дубликат [Calling DialogFragment from Fragment] (http://stackoverflow.com/questions/19252288/calling-dialogfragment-from-fragment) – Raghunandan