[英]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,因此它失敗了。 更改Sub
的setText()
並Add
到此:
text.setText("" + num);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.