package jp.gihyo.mitoma.android.s1201dialog;

import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.DialogFragment;

import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import java.util.ArrayList;
import jp.gihyo.mitoma.android.s1201dialog.fragment.MyDialog01Fragment;
import jp.gihyo.mitoma.android.s1201dialog.fragment.MyDialog02Ex01Fragment;
import jp.gihyo.mitoma.android.s1201dialog.fragment.MyDialog02Ex02Fragment;
import jp.gihyo.mitoma.android.s1201dialog.fragment.MyDialog03Fragment;
import jp.gihyo.mitoma.android.s1201dialog.fragment.MyDialog04Fragment;
import jp.gihyo.mitoma.android.s1201dialog.fragment.MyDialog05Fragment;
import jp.gihyo.mitoma.android.s1201dialog.fragment.MyDialog06Fragment;
import jp.gihyo.mitoma.android.s1201dialog.fragment.MyDialog07Fragment;


public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button btn = findViewById(R.id.btn);

        /* ********************************************
         テストするダイアログに対応するリスナーに切り替える
        ********************************************* */
        //MyDialog01Fragment()～MyDialog07Fragment()のとき
        //btn.setOnClickListener(new ButtonOnClick());
        //MyDialog02Ex01Fragment()のとき
        //btn.setOnClickListener(new ButtonOnClickEx01());
        //MyDialog02Ex02Fragment()のとき
        btn.setOnClickListener(new ButtonOnClickEx02());
    }
    private class ButtonOnClick implements View.OnClickListener{
        @Override
        public void onClick(View v) {
            //MyDialog01Fragment()～MyDialog07Fragment()はここを変える
            DialogFragment dialog =new MyDialog01Fragment();
            dialog.show(getSupportFragmentManager(),null);
        }
    }
    //外部から配列で年齢を与えるケース
    private class ButtonOnClickEx01 implements View.OnClickListener{
        @Override
        public void onClick(View v) {
            String[] aryAge = {"10代", "20代", "30代", "40代", "50代"};
            Bundle args = new Bundle();
            args.putStringArray("aryAge",aryAge);
            DialogFragment dialog =new MyDialog02Ex01Fragment();
            dialog.setArguments(args);
            dialog.show(getSupportFragmentManager(),null);
        }
    }
    //外部からArrayListで年齢を与えるケース
    private class ButtonOnClickEx02 implements View.OnClickListener{
        @Override
        public void onClick(View v) {
            ArrayList<String> aryAge = new ArrayList<String>();
            aryAge.add("10代");
            aryAge.add("20代");
            aryAge.add("30代");
            aryAge.add("40代");
            aryAge.add("50代");
            Bundle args = new Bundle();
            args.putStringArrayList("aryAge",aryAge);
            DialogFragment dialog =new MyDialog02Ex02Fragment();
            dialog.setArguments(args);
            dialog.show(getSupportFragmentManager(),null);
        }
    }
}