Java 点击按钮关闭Android应用程序(在自定义注册页面上)

Java 点击按钮关闭Android应用程序(在自定义注册页面上),java,android,eclipse,smartphone,Java,Android,Eclipse,Smartphone,需要一些帮助调试我的代码。我对Android SDK非常陌生,正在努力学习。从我在SO和其他google搜索结果上的几篇帖子中收集到的信息。。。我制定了这个准则 public class MainMenu extends Activity { private int str = 8, dex = 8, inte = 8, luk = 8, stats = 20; @Override protected void onCreate(Bundle savedInstanceState) {

需要一些帮助调试我的代码。我对Android SDK非常陌生,正在努力学习。从我在SO和其他google搜索结果上的几篇帖子中收集到的信息。。。我制定了这个准则

public class MainMenu extends Activity {
private int str = 8, dex = 8, inte = 8, luk = 8, stats = 20;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getActionBar().setDisplayShowHomeEnabled(false);
    getActionBar().setDisplayShowTitleEnabled(false);
    setContentView(R.layout.activity_main_menu);
}
如您所见,我已经创建了一些私有变量,我的应用程序将使用它们来存储数据。为了与这些值交互,我将在每次修改TextView时重新绘制它们*如果这不是一个理想的策略,请随时纠正我

public void strup(View view) {
    if(stats > 0) {
    TextView tv = (TextView)findViewById(R.id.textView4);
    TextView st = (TextView)findViewById(R.id.textView18);
    str++;
    stats--;
    tv.setText(str);
    st.setText(stats);
    } else {
    Toast.makeText(this, "Out of stats!", Toast.LENGTH_SHORT).show();
    }
我使用以下格式的按钮

    Str [X] [+1] 
其中Str[X]是具有动态值X的TextView。 其中[+1]是一个按钮,带有XML文件预设的Onclick函数

    <TextView
        android:id="@+id/textView9"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Str [" />

    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="8" />

    <TextView
        android:id="@+id/textView13"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="]" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="strup"
        android:text="+1" />

现在为了简单起见,我修改了“android:text=”“”行以反映它们的实际值,而不是链接到@string/。。。我不认为这有什么不同,但我想承认这一点

所以我的问题是,为什么当我点击“+1”按钮时,我的应用程序会崩溃?我的应用程序所要做的就是用一个更高的值(str下)和一个更低的值(stats下)重新绘制TextView


谢谢你的帮助

尝试更改
设置内容视图(R.layout.activity\u主菜单)的位置


尝试更改
setContentView(R.layout.activity\u主菜单)的位置


您试图创建此对象:

 TextView st = (TextView)findViewById(R.id.textView18);

textView18在xml中的什么位置

您试图创建此对象:

 TextView st = (TextView)findViewById(R.id.textView18);

textView18在xml中的什么位置

您正在settext中传递整数值。可以将整数强制转换为字符串,也可以尝试更改settext,如下所示:

   tv.setText(""+str);
    st.setText(""+stats);

您正在settext中传递整数值。可以将整数强制转换为字符串,也可以尝试更改settext,如下所示:

   tv.setText(""+str);
    st.setText(""+stats);

您可以使用toString方法进行如下铸造:

tv.setText(str.toString());
st.setText(stats.toString()

u可以使用以下toString方法进行铸造:

tv.setText(str.toString());
st.setText(stats.toString()

这不会有任何区别…检查我的答案。这不会有任何区别…检查我的答案。