[英]Android Studio with intent to other activities
intent.putExtra ( "result", (double) kg / (Math.pow (tall, 2)) / 10000);// <SecondActivity>
result = intent.getDoubleExtra double ("result", 0); //<ThirdActivity>
I have tried the following:
tall: 150 cm
kg: 50kg
result: 1.95 .... (original calculations. 19.5)
Even if the value does not appear 10 Multiply.
問題發生在受精后。 打算進行其他活動的Android Studio (原始代碼)
[第二活動]
public class SecondActivity extends Activity {
RadioGroup rg;
ImageButton button4;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
rg = (RadioGroup) findViewById(R.id.radioGroup);
button4 = (ImageButton) findViewById(R.id.button4);
button4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
RadioButton rd = (RadioButton) findViewById(rg.getCheckedRadioButtonId());
//String str_Qtype = rd.getText().toString();
EditText et1 = (EditText) findViewById(R.id.EditText02); // tall (inot typing error)
EditText et2 = (EditText) findViewById(R.id.EditText01); // kg (not typing error)
int tall = Integer.parseInt(et1.getText().toString());
int kg = Integer.parseInt(et2.getText().toString());
Intent intent = new Intent(SecondActivity.this, ThirdActivity.class);
intent.putExtra("tall", Integer.parseInt(et1.getText().toString()));
intent.putExtra("kg", Integer.parseInt(et2.getText().toString()));
intent.putExtra("result",(double)kg/(Math.pow(tall,2))/10000);
startActivity(intent);
}
});
}
}
[ThridActivity]
package com.example.bmi_calculate;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.PersistableBundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
public class ThirdActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.third);
Intent intent = getIntent();
int tall = intent.getIntExtra("tall", 0);
int kg = intent.getIntExtra("kg", 0);
double result = intent.getDoubleExtra("result",0);
TextView tv1 = (TextView) findViewById(R.id.textView1);
TextView tv2 = (TextView) findViewById(R.id.textView2);
TextView tv3 = (TextView)findViewById(R.id.textView3);
tv1.setText("" + tall);
tv2.setText("" + kg);
tv3.setText(""+String.valueOf(result));
}
}
要保存值,請執行以下操作:
intent.putExtra("result",(float) (kg/((tall*0.01)*(tall*0.01))) ); // tall in cm unit
您需要獲取float
值或另存為int
:
float result = intent.getFloatExtra("result", 0f);
[編輯]-固定代碼錯字
在第二個活動中,您將結果存儲在變量high和kg中,創建第三個變量結果並將該變量傳遞給方法
@Override
public void onClick(View v) {
RadioButton rd = (RadioButton) findViewById(rg.getCheckedRadioButtonId());
//String str_Qtype = rd.getText().toString();
EditText et1 = (EditText) findViewById(R.id.EditText02); // tall (inot typing error)
EditText et2 = (EditText) findViewById(R.id.EditText01); // kg (not typing error)
int tall = Integer.parseInt(et1.getText().toString());
int kg = Integer.parseInt(et2.getText().toString());
float result = kg/(tall*0.1)*(tall*0.1))
Intent intent = new Intent(SecondActivity.this, ThirdActivity.class);
intent.putExtra("tall", tall);
intent.putExtra("kg", kg);
intent.putExtra("result",result);
startActivity(intent);
在第三次活動中
float result = intent.getFloatExtra("result",0);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.