android应用程序崩溃

android应用程序崩溃,android,toast,Android,Toast,我对安卓系统的开发绝对是新手。我正在尝试编写一个简单的android应用程序,它有一个按钮并显示祝酒词。 我可以在虚拟设备中看到图标,但当我点击它时,应用程序崩溃。 以下是我到目前为止所写的内容: MainActivity.java: package com.example.stringopsapp; import android.os.Bundle; import android.app.Activity; import android.content.Context; import and

我对安卓系统的开发绝对是新手。我正在尝试编写一个简单的android应用程序,它有一个按钮并显示祝酒词。 我可以在虚拟设备中看到图标,但当我点击它时,应用程序崩溃。 以下是我到目前为止所写的内容:

MainActivity.java:

package com.example.stringopsapp;

import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.widget.Button;
import android.view.View;
//import android.view.View.OnClickListener;
import android.widget.Toast;

public class MainActivity extends Activity {

Button button;
private Context context;

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

    final Button button = (Button) findViewById(R.id.action_settings);
    button.setOnClickListener(new View.OnClickListener() {


    @Override
    public void onClick(View v) {
    Toast toast = Toast.makeText(context, "reach Me @ Winscosin", Toast.LENGTH_SHORT);
    toast.show();
    }
    });
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}
}

activity_main.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#000001"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#000000"
    android:text="@string/MyString"
    android:textColor="#bbcc00"
    android:textSize="25sp" />

<Button
    style="@style/AppTheme"
    android:layout_width="100dp"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="35dp"
    android:onClick="selfDestruct"
    android:background="#ffffff"
    android:textColor="#000000"
    android:text="@string/self_destruct" />

您从未初始化过成员变量
上下文
,因此它是
null
。由于您处于活动中,因此可以使用
MainActivity。此
作为上下文

此外,您的主布局似乎没有id为
action\u设置的视图。如果这是您的实际代码,则在启动应用程序时会发生崩溃,而不是在单击按钮时


注意:在发布关于Android崩溃的问题时,请始终在问题中包含来自logcat的异常stacktrace。

您忘记将id添加到xml文件中。按钮xml还必须有一行:

android:id="@+id/action_settings"

laalto之前的回答是正确的

上下文为空。它没有初始化。 另一种方法是在Toast.makeText函数中使用
getApplicationContext()

Toast.makeText(getApplicationContext(), "reach Me @ Winscosin", Toast.LENGTH_SHORT).show();

是的,先生,我的意思是,当我点击应用程序图标时,它崩溃了,它从来没有进入appI添加的
android:id=“@+id/action\u设置”
,在activity\u main.xml中。现在,当我点击按钮时,它崩溃了。@SegmentationFault这是这个答案第一段中的空上下文问题。
Toast.makeText(getApplicationContext(), "reach Me @ Winscosin", Toast.LENGTH_SHORT).show();