android - フラグメントに値を追加/取得するスピナー

okwaves2024-01-25  7

フラグメントのスピナーに値を追加して取得する最良の方法は何ですか?

XML

 <Spinner
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/Status"
        android:textSize="25dp"
        android:padding="5dp"/>

Java

  public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
   
    final View root= inflater.inflate(R.layout.fragment_add, container, false);
    Spinner status = root.findViewById(R.id.Status);  
    return root;`

`

データの追加

  String[] role = new String[] {"Faculty","Student"};

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(getContext(),android.R.layout.simple_spinner_item,role);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
    status.setAdapter(adapter);

データの取得

 String state = status.getSelectedItem().toString();


------------------------

OnItemSelectedListener を使用する必要があります

spinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {

        override fun onItemSelected(adapterView: AdapterView<*>?, view: View?, position: Int, id: Long) {
        }

        override fun onNothingSelected(adapterView: AdapterView<*>?) {
        }

    }

総合生活情報サイト - OKWAVES
総合生活情報サイト - OKWAVES
生活総合情報サイトokwaves(オールアバウト)。その道のプロ(専門家)が、日常生活をより豊かに快適にするノウハウから業界の最新動向、読み物コラムまで、多彩なコンテンツを発信。