如何显示微调器所选项目的数量

时间:2017-11-23 20:10:36

标签: java android spinner

代码中的问题在哪里?我想在Toast中显示所选的微调器项目的数量。当我使用 num 方法时,该应用会退出我。

    public class MainActivity extends AppCompatActivity {


    String[] dataA = {"Choose type of goal", 
                      "Up to 5", 
                      "Up to 15", 
                      "Up to 23", 
                      "Up to 25"
    };
    int num;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        setadapter();
    }

    public void setadapter() {
        ArrayAdapter<String> adapterA = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, dataA);
        adapterA.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        Spinner spinnerA = (Spinner) findViewById(spinner);
        spinnerA.setAdapter(adapterA);

    }

    public int getNum() {
        Spinner spinnerA = (Spinner) findViewById(spinner);
        num = spinnerA.getSelectedItemPosition();
        return num;
    }

    public void num(View v) {
        Toast.makeText(getBaseContext(), getNum(), Toast.LENGTH_SHORT).show();
    }
}

1 个答案:

答案 0 :(得分:0)

您正在使用int的{​​{1}}值,系统将其解释为getNum()!您应该使用resID

getNum()转换为字符串

备注:你应该让你的Spinner成为一个全局变量,并在该方法中访问它,而不是每次都重新创建对象。