我是android和java宇宙中的新手,但我有一个项目,我已经构建了一个类似“Tip Calculator”的应用程序。
该项目的指南是:
编写一个包含两项活动的应用。
第一项活动
标签“膳食金额”,“税金”,“提示”,“总计”及相应的文字观点
用户可以输入膳食金额
计算税,小费和总额(注意:您可能需要设置某些属性才能使这些TextViews只读)
- 有一个名为“计算”的按钮,按下时会产生第二个活动
- 完成计算后,显示金额
醇>第二次活动
- 标签“Tax Percentage”和相应的TextView,用户将在其中输入纳税百分比
- 表示服务质量的按钮“差8%”,“平均10%”,“良好15%”和“杰出20%”
- 当按下其中一个按钮时,应用程序需要计算所需的金额并将结果传递回第一个活动
醇>
我的问题是当我开始第一个活动时,我需要做一个仅在从第二个活动返回时运行的功能,而在启动应用程序时不运行。但我做不到。
下面我粘贴了第一个和第二个活动的代码。
MainActivity.java
package com.example.viniciuscardoso.tipcalculator;
import android.app.AlertDialog;
import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.widget.Button;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends ActionBarActivity {
public Button mCalculateButton;
public double Tax = 7;
public double Tip = 10;
public TextView TextViewTax;
public TextView TextViewTip;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextViewTax = (TextView)findViewById(R.id.TextViewTax);
TextViewTip = (TextView)findViewById(R.id.TextViewTip);
mCalculateButton = (Button)findViewById(R.id.calculate);
TextViewTax.setText(String.valueOf(Tax));
TextViewTip.setText(String.valueOf(Tip));
final Intent intent = new Intent(this, ActivityTip.class);
mCalculateButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(intent);
}
});
}
}
ActivityTip.java
package com.example.viniciuscardoso.tipcalculator;
import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class ActivityTip extends ActionBarActivity {
Button mPoorButton;
Button mAverageButton;
Button mGoodButton;
Button mOutstandingButton;
EditText mTaxEdit;
String tax;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_activity_tip);
mPoorButton = (Button)findViewById(R.id.poor_button);
mAverageButton = (Button)findViewById(R.id.average_button);
mGoodButton = (Button)findViewById(R.id.good_button);
mOutstandingButton = (Button)findViewById(R.id.outstanding_button);
mTaxEdit = (EditText)findViewById(R.id.edit_tax);
final Intent intent = new Intent(this, MainActivity.class);
tax = mTaxEdit.getText().toString();
mPoorButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
intent.putExtra("tax_percentage", tax);
intent.putExtra("tip_percentage", 8.0);
startActivity(intent);
}
});
mAverageButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
intent.putExtra("tax_percentage", tax);
intent.putExtra("tip_percentage", 10.00);
startActivity(intent);
}
});
mGoodButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
intent.putExtra("tax_percentage", tax);
intent.putExtra("tip_percentage", 15.00);
startActivity(intent);
}
});
mOutstandingButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
intent.putExtra("tax_percentage", tax);
intent.putExtra("tip_percentage", 20.0);
startActivity(intent);
}
});
}
}
有人可以帮助解决这个问题。
如果你需要带有布局的.xml,请告诉我。
谢谢!