diff --git a/app/src/main/java/org/ntlab/amaryllis/client/MyDialogFragment.java b/app/src/main/java/org/ntlab/amaryllis/client/MyDialogFragment.java index e814929..29dc4bc 100644 --- a/app/src/main/java/org/ntlab/amaryllis/client/MyDialogFragment.java +++ b/app/src/main/java/org/ntlab/amaryllis/client/MyDialogFragment.java @@ -22,6 +22,7 @@ import androidx.fragment.app.DialogFragment; import androidx.fragment.app.Fragment; + import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -32,44 +33,43 @@ public class MyDialogFragment extends DialogFragment { - private DialogFragmentListener dialogFragmentListener; + + public interface DialogFragmentListener{ void onDialogPositiveButtonClicked(); + //public void onOkClicked(Bundle args); } + public interface OnOkClickListener { + //public void onOkClicked(Bundle args); + } + + private DialogFragmentListener dialogFragmentListener; + public MyDialogFragment newInstance(DialogFragmentListener dialogFragmentListener){ this.dialogFragmentListener = dialogFragmentListener; return new MyDialogFragment(); } - @NonNull - @Override - public Dialog onCreateDialog(@Nullable Bundle savedInstanceState){ - AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity()) - .setTitle("購入") - .setMessage("購入しますか?") - .setPositiveButton("購入する", new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - dialogFragmentListener.onDialogPositiveButtonClicked(); - } - }) - .setNegativeButton("やめる", null); - - return dialogBuilder.create(); - } - public MyDialogFragment newInstance(Fragment fragment){ + public static MyDialogFragment newInstance(Bundle bundle,Fragment fragment){ MyDialogFragment instance = new MyDialogFragment(); + instance.setArguments(bundle); instance.setTargetFragment(fragment, 0); return instance; } + + @Override public void onAttach(Context context) { super.onAttach(context); + //public void onAttach(Activity activity) { + //super.onAttach(activity); + + //System.out.printf("aaaaaaaaaaa"); Fragment targetFragment = this.getTargetFragment(); try{ @@ -83,6 +83,32 @@ + @NonNull + @Override + public Dialog onCreateDialog(@Nullable Bundle savedInstanceState){ + //AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity()) + Dialog dialog = new AlertDialog.Builder(getActivity()) + .setTitle("購入") + .setMessage("購入しますか?") + //.setPositiveButton("購入する", new DialogInterface.OnClickListener() { + //@Override + //public void onClick(DialogInterface dialog, int which) { + //dialogFragmentListener.onDialogPositiveButtonClicked(); + //} + //}) + //.setNegativeButton("やめる", null); + .create(); + + //return dialogBuilder.create(); + return dialog; + } + + + + + + + /* diff --git a/app/src/main/java/org/ntlab/amaryllis/client/fragment/ListFragment.java b/app/src/main/java/org/ntlab/amaryllis/client/fragment/ListFragment.java index 74aacfd..210a5f8 100644 --- a/app/src/main/java/org/ntlab/amaryllis/client/fragment/ListFragment.java +++ b/app/src/main/java/org/ntlab/amaryllis/client/fragment/ListFragment.java @@ -34,29 +34,32 @@ // 呼び出し元のFragment -//public class ListFragment extends Fragment implements OnOkClickListener { -public class ListFragment extends Fragment { +public class ListFragment extends Fragment implements MyDialogFragment.DialogFragmentListener { +//public class ListFragment extends Fragment { // ダイアログを表示するボタン Button mDispDialog; // ダイアログで選択したものを反映するTextView TextView mSelectedText; - //@Override - //public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { - //super.onViewCreated(view, savedInstanceState); + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + //View v = inflater.inflate(R.layout.fragment_list, container, false); - //mDispDialog = (Button) view.findViewById(R.id.btnDispDialog); - //mDispDialog.setOnClickListener(new View.OnClickListener() { - //public void onClick(View v) { - //showMyDialog(); + mDispDialog = (Button) view.findViewById(R.id.btnDispDialog); + mDispDialog.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { //FragmentManager manager = getActivity().getSupportFragmentManager(); //MyDialogFragment dialog = MyDialogFragment.newInstance(); - //dialog.setTargetFragment(ListFragment.this, 0); // ★★★ - //dialog.show(getFragmentManager(), "Dialog"); - //} - //}); - //} + DialogFragment dialog = new MyDialogFragment(); + dialog.setTargetFragment(ListFragment.this, 0); // ★★★ + dialog.show(getParentFragmentManager(), "Dialog"); + } + }); + //return inflater.inflate(R.layout.fragment_list, container, false); + //return v; + } //void showMyDialog() { @@ -73,22 +76,39 @@ View v = inflater.inflate(R.layout.fragment_list, container, false); - mSelectedText = (TextView) v.findViewById(R.id.textSelected); - mDispDialog = (Button) v.findViewById(R.id.btnDispDialog); - mDispDialog.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - //FragmentManager manager = getActivity().getSupportFragmentManager(); - DialogFragment dialog = new MyDialogFragment(); - //DialogFragment dialog = MyDialogFragment.newInstance(); - dialog.setTargetFragment(ListFragment.this, 0); // ★★★ - dialog.show(getFragmentManager(),null); - } - }); + //mSelectedText = (TextView) v.findViewById(R.id.textSelected); + //mDispDialog = (Button) v.findViewById(R.id.btnDispDialog); + //mDispDialog.setOnClickListener(new View.OnClickListener() { + //@Override + //public void onClick(View v) { + ////FragmentManager manager = getActivity().getSupportFragmentManager(); + //DialogFragment dialog = new MyDialogFragment(); + ////DialogFragment dialog = MyDialogFragment.newInstance(); + //dialog.setTargetFragment(ListFragment.this, 0); // ★★★ + //dialog.show(getParentFragmentManager(),"aaaa"); + //} + //}); //return inflater.inflate(R.layout.fragment_list, container, false); return v; } + @Override + public void onDialogPositiveButtonClicked() { + + } + + +/* + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstance/State); + if (getArguments() != null) { + + } + } + +*/ @@ -168,13 +188,6 @@ //return fragment; //} - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - if (getArguments() != null) { - - } - } //@Override //public View onCreateView(LayoutInflater inflater, ViewGroup container,