Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当我按下按钮开始祝酒时,Java应用程序关闭。但是为什么呢?_Java_Android_Button_Toast - Fatal编程技术网

当我按下按钮开始祝酒时,Java应用程序关闭。但是为什么呢?

当我按下按钮开始祝酒时,Java应用程序关闭。但是为什么呢?,java,android,button,toast,Java,Android,Button,Toast,我制作了非常简单的java土司,当你按下按钮时就会出现。但是,当我在手机上运行它时,它会停止应用程序并毫无错误地退出。我做错了什么 主要活动: 按钮: 尝试删除xml文件中android:onClick中的main活动。Simple:android:onClick=button在xml中单击就可以了。 或者在OnCreate方法中,您可以将侦听器分配给按钮,如下所示: final Button button = (Button)findViewById(R.id.button); button.

我制作了非常简单的java土司,当你按下按钮时就会出现。但是,当我在手机上运行它时,它会停止应用程序并毫无错误地退出。我做错了什么

主要活动:

按钮:


尝试删除xml文件中android:onClick中的main活动。

Simple:android:onClick=button在xml中单击就可以了。 或者在OnCreate方法中,您可以将侦听器分配给按钮,如下所示:

final Button button = (Button)findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                buttonWasClicked(button);
            }
        });
在本例中,您将从xml中删除android:OnClick。
您可以更好地处理事件:从方法按钮中删除参数视图按钮单击此按钮可不声明变量final。

请回答您的问题并添加logcat。问题与相关,但为什么?这不是一个好问题,请阅读
<Button
    android:text="Button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/button"
    android:layout_marginTop="16dp"
    app:layout_constraintTop_toTopOf="@+id/activity_main"
    android:layout_marginStart="16dp"
    app:layout_constraintLeft_toLeftOf="@+id/activity_main"
    android:layout_marginLeft="16dp"
    android:onClick="buttonWasClicked (MainActivity)"
    android:visibility="visible" />
</android.support.constraint.ConstraintLayout>
final Button button = (Button)findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                buttonWasClicked(button);
            }
        });