java - 带按钮和 TOAST 的 Android 微调器

标签 java android button spinner toast

我的代码有问题,单击按钮时应该显示 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/

相关文章:

java - Spring 无法 Autowiring Webapp 上下文

java - 如何修复此问题 "No Such Method Error: No static method"

java - 尝试在 Android 上扩展和使用 Activity 时出错

android - 将整个 sqlite 数据库上传到谷歌应用引擎

java - 单击按钮取消选中所有复选框

javascript - 如何编写脚本来检测网站上的 Activity 按钮?

java - 以编程方式编译 Java 类?

java - Apache Tomcat 无法使用 Hibernate、Jersey 和 IntelliJ 找到 EntityManager 类

android - 编译 'com.android.support:multidex:1.0.1' 发生错误 : all com android support libraries must use the exact same version

java - 在java中为计数器添加一个 Action 监听器