代码中的问题在哪里?我想在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();
}
}
答案 0 :(得分:0)
您正在使用int
的{{1}}值,系统将其解释为getNum()
!您应该使用resID
getNum()
转换为字符串
备注:你应该让你的Spinner成为一个全局变量,并在该方法中访问它,而不是每次都重新创建对象。