How to get Spinner selected item value to string?

前端 未结 14 1970
离开以前
离开以前 2020-12-02 18:18

I have 5 Spinners. In order to make it summary to this.

This is Spinner in xml



        
相关标签:
14条回答
  • 2020-12-02 18:33

    try this

     final Spinner cardStatusSpinner1 = (Spinner) findViewById(R.id.text_interested);
        String cardStatusString;
        cardStatusSpinner1.setOnItemSelectedListener(new OnItemSelectedListener() {
    
            @Override
            public void onItemSelected(AdapterView<?> parent,
                    View view, int pos, long id) {
                cardStatusString = parent.getItemAtPosition(pos).toString();
            }
    
            @Override
            public void onNothingSelected(AdapterView<?> arg0) {
                // TODO Auto-generated method stub
    
            }
        });
    
     final Button saveBtn = (Button) findViewById(R.id.save_button);
        saveBtn .setOnClickListener(new OnClickListener() {
    
            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
    
                System.out.println("Selected cardStatusString : " + cardStatusString ); //this will print the result
            }
        });
    
    0 讨论(0)
  • 2020-12-02 18:35

    Since the latest language for Android Development is Kotlin. Here is, how we do it in Kotlin using Anonymous object.

    spinnerName?.onItemSelectedListener = object : AdapterView.OnItemSelectedListener{
        override fun onNothingSelected(parent: AdapterView<*>?) {
           println("Nothing Selected")
        }
    
        override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long) {
           val selectedString = yourList[position]
        }
    
    }
    
    0 讨论(0)
  • 2020-12-02 18:39

    Get the selected item with Kotlin:

    spinner.selectedItem.toString()
    
    0 讨论(0)
  • 2020-12-02 18:40

    try this

    sp1 = String.valueOf(spinner.getSelectedItem());
    
    0 讨论(0)
  • 2020-12-02 18:45

    The best way to do this is :-

    String selectedItem = spinner.getSelectedItem().toString();
    

    you can refer the docs here : Spinners

    0 讨论(0)
  • 2020-12-02 18:49

    If your Spinner was populated by SQLite cursor, then the solution is:

    Spinner mySpin = (Spinner) findViewById(R.id.myspin);
    mySpin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {  
    @Override
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
               SQLiteCursor item = (SQLiteCursor) parent.getItemAtPosition(position);
               String value = String.valueOf(item.getString(0));
               Toast.makeText(getApplicationContext(), "The option is:" + value , Toast.LENGTH_SHORT).show(); 
     }
    

    PS: In item.getString(0) -> 0 is the index of column on cursor that you want to get.

    0 讨论(0)
提交回复
热议问题