我的代码有问题,单击按钮时应该显示 toast。
public TextView textView,textView2;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Spinner spinner = (Spinner) findViewById(R.id.spinner);
Spinner spinner2 = (Spinner) findViewById(R.id.spinner2);
}
public void start(View view) {
Context context = getApplicationContext();
Toast.makeText(context, String.valueOf(spinner.getSelectedItemPosition()) , Toast.LENGTH_LONG).show();
}
我不知道为什么Toast消息不显示并且按下按钮时程序崩溃。
这是我在 activity_main.xml
<Spinner
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="73dp"
android:id="@+id/spinner2"
android:entries="@array/jednostki"/>
xml 中的按钮
<Button
android:text="Start"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/spinner"
android:layout_centerHorizontal="true"
android:layout_marginBottom="71dp"
android:id="@+id/button"
android:onClick="start"/>
和带有项目的数组
<string-array name="jednostki">
<item>Celsjusze</item>
<item>Farenheity</item>
<item>Kelwiny</item>
</string-array>
最佳答案
看起来好像您没有通过 ArrayAdapter 填充微调器,如文档 here 中所示。因此,除非您使用 xml 属性 android:entries="@array/array_name"方法填充微调器(我们看不到),否则当您调用 spinner.getSelectedItemPosition() 时,它将抛出空指针异常。
关于java - 带按钮和 TOAST 的 Android 微调器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40226425/