代码如下,我试图在用户输入字段时计算应该根据用户的输入数字执行计算计算器,新变量应该创建并执行一些计算,如下所述。
package com.cyberthreats.activitylifetester.gueagecalculator;
import android.content.Intent;
import android.os.Build;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.ScrollView;
import android.widget.Switch;
import android.widget.TextView;
import android.widget.Toast;
import static com.cyberthreats.activitylifetester.gueagecalculator.R.id.activity_main;
import static com.cyberthreats.activitylifetester.gueagecalculator.R.id.add;
import static com.cyberthreats.activitylifetester.gueagecalculator.R.id.guage1;
import static com.cyberthreats.activitylifetester.gueagecalculator.R.id.weight;
import static com.cyberthreats.activitylifetester.gueagecalculator.R.id.wrap_content;
public class MainActivity extends AppCompatActivity {
EditText guage1, guage2, weight;
Button addmore, calculate;
int value1, value2, totalSum;
float calculated, calculated2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
guage1 = (EditText) findViewById(R.id.guage1);
guage2 = (EditText) findViewById(R.id.guage2);
weight = (EditText) findViewById(R.id.weight);
addmore = (Button) findViewById(R.id.add);
calculate = (Button) findViewById(R.id.calculate);
calculate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String num1 = guage1.getText().toString();
String num2 = guage2.getText().toString();
String wei = weight.getText().toString();
int number1, number2, number3, weight;
number1 = Integer.parseInt(num1); //int value in number1
number2 = Integer.parseInt(num2); //int value in number2
weight = Integer.parseInt(wei); //int value in weight
//now calculations
switch (number1) {
case 16:
value1 = 4096;
break;
case 17:
value1 = 3136;
break;
case 18:
value1 = 2304;
break;
case 19:
value1 = 1600;
break;
case 20:
value1 = 1296;
break;
case 21:
value1 = 1024;
break;
case 22:
value1 = 784;
break;
case 23:
value1 = 576;
break;
case 24:
value1 = 484;
break;
default:
}
switch (number2) {
case 16:
value2 = 4096;
break;
case 17:
value2 = 3136;
break;
case 18:
value2 = 2304;
break;
case 19:
value2 = 1600;
break;
case 20:
value2 = 1296;
break;
case 21:
value2 = 1024;
break;
case 22:
value2 = 784;
break;
case 23:
value2 = 576;
break;
case 24:
value2 = 484;
break;
}
//switch for number 2 ended
totalSum = value1 + value2;
calculated = value1 / totalSum * weight;
calculated2 = value2 / totalSum * weight;
Intent i = new Intent(MainActivity.this, Main2Activity.class);
i.putExtra("calculated", calculated);
i.putExtra("calculated2", calculated2);
startActivity(i);
}
});
}
}
和第二项活动
package com.cyberthreats.activitylifetester.gueagecalculator;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
public class Main2Activity extends AppCompatActivity {
float calculated, calculated2;
int number3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
TextView r = (TextView) findViewById(R.id.result);
TextView r2 = (TextView) findViewById(R.id.result2);
Intent intent = getIntent();
float i = intent.getFloatExtra("calculated", calculated);
float j = intent.getFloatExtra("calculated", calculated2);
r.setText(String.valueOf(i));
r2.setText(String.valueOf(j));
}
}
答案 0 :(得分:0)
以下是您需要更改的内容。
首先将body
的类型更改为浮动,即value1, value2, totalSum;
在float value1, value2, totalSum;
中,编辑以匹配此行
Main2Activity.java