微调器在片段中增加/获得价值

问题描述

在片段微调器中添加和获取价值的最佳方法是什么?

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<*>?) {
        }

    }

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...