簡體   English   中英

不幸的是,該應用程序已停止工作

[英]Unfortunately the app has stopped working

請告訴我為什么我的應用程序不起作用我制作了一個咖啡計算器應用程序。 這是xml代碼

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/white"
    android:orientation="vertical" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="16dp"
        android:text="@string/disp"
        android:textColor="@android:color/black"
        android:textSize="20sp"
        android:textStyle="bold" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/add"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="16dp"
            android:onClick="Add"
            android:text="@string/add"
            android:textColor="@android:color/black"
            android:textSize="30sp"
            android:textStyle="bold"
            android:background="#E57373" />

        <TextView
            android:id="@+id/sum"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="16dp"
            android:text="@string/text"
            android:textColor="@android:color/black"
            android:textSize="20sp"
            android:textStyle="bold" />

        <Button
            android:id="@+id/sub"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="16dp"
            android:onClick="Sub"
            android:text="@string/sub"
            android:textColor="@android:color/black"
            android:textSize="30sp"
            android:textStyle="bold"
            android:background="#E57373" />
    </LinearLayout>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="16dp"
        android:text="@string/price"
        android:textColor="@android:color/black"
        android:textSize="20sp"
        android:textStyle="bold" />

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="16dp"
            android:text="@string/total"
            android:textColor="@android:color/black"
            android:textSize="20sp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/res"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="16dp"
            android:text="@string/res"
            android:textColor="@android:color/black"
            android:textSize="20sp"
            android:textStyle="bold" />
    </LinearLayout>

    <Button
        android:id="@+id/order"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="210sp"
        android:onClick="Order"
        android:text="@string/order"
        android:textColor="@android:color/black"
        android:textSize="20sp"
        android:textStyle="bold" 
        android:textAllCaps="true"
        android:background="#E57373"/>

</LinearLayout>

這是我的 Java 代碼

package com.example.extra;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;

public class MainActivity extends Activity {

    public int num=0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @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;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

    public void Add(View view){
        //On click method for Add button
        TextView text=(TextView)findViewById(R.id.sum);
        num=num+1;
        text.setText(num);
    }

    public void Sub(View view){
        //On click method for Sub button
        TextView text=(TextView)findViewById(R.id.sum);
        if(num==0)
            text.setText(0);
        else
        {   num=num-1;
            text.setText(num);
        }   
    }

    public void Order(View view){
        //On click method for button ORDER
        TextView text=(TextView)findViewById(R.id.res);
        text.setText("$" + num*10);
    }

}

當我啟動應用程序並單擊添加按鈕或子按鈕時,應用程序崩潰。但訂單按鈕工作正常。請幫助...

您的應用程序崩潰的原因是因為您在 TextViews 中放入了 int。 setText()接受一個字符串變量或一個指定資源 ID 的 int。 在這種情況下, int 沒有指定資源 ID,因此它失敗了。 更改SubsetText()Add到此:

text.setText("" + num);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM