这是关注的一部分-------
public void incrementQ(View view) {
int variableI = 2;
variableI = variableI + 1;
display(variableI);
}
这个问题是关于Udacity的基础Android开发计划课程编号。 1使应用程序互动:第1部分....... 18。测验:更新数量变量
这是-----
下面的MainActivity.java的完整代码package com.example.user1.a1;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.TextView;
import java.text.NumberFormat;
/**
* This app displays an order form to order coffee.
*/
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
/**
* This method is called when the order button is clicked.
*/
public void submitOrder(View view) {
int variableC = 2;
display(variableC);
displayPrice(variableC * 5);
}
public void incrementQ(View view) {
int variableI = 2;
variableI = variableI + 1;
display(variableI);
}
public void decrementQ(View view){
int variableD = 2;
variableD = variableD - 1;
display(variableD);
}
/**
* This method displays the given quantity value on the screen.
*/
private void display(int number) {
TextView quantityTextView = (TextView) findViewById(
R.id.quantity_text_view);
quantityTextView.setText("" + number);
}
/**
* This method displays the given price on the screen.
*/
private void displayPrice(int number) {
TextView priceTextView = (TextView) findViewById(R.id.pricein$);
priceTextView.setText(NumberFormat.getCurrencyInstance().format(number));
}
这是xml代码..以防万一
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent"
tools:context="com.example.user1.a1.MainActivity"
android:weightSum="1">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="@string/quantity"
android:textAllCaps="true" />
<Button
android:id="@+id/button2"
android:layout_width="48dp"
android:layout_height="48dp"
android:onClick="incrementQ"
android:text="@string/goonakar" />
<TextView
android:id="@+id/quantity_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/_0"
android:textColor="#000000"
android:textSize="16sp" />
<Button
android:id="@+id/button3"
android:layout_width="48dp"
android:layout_height="48dp"
android:onClick="decrementQ"
android:text="@string/bhagakar" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/price"
android:textColor="#000000"
android:textSize="16sp" />
<TextView
android:id="@+id/pricein$"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/$0"
android:textColor="#000000"
android:textSize="16sp" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:onClick="submitOrder"
android:text="@string/order"
android:textAllCaps="true" />
</LinearLayout>
答案 0 :(得分:0)
在每次通话中重新初始化variableI
似乎很奇怪。您应该尝试将所有变量放在函数之外:
int variableI = 2;
public void incrementQ(View view) {
variableI = variableI + 1;
display(variableI);
}
这可能需要在您的代码中的多个位置应用。