android 整数值从一个 activity 传递到另一个问题

android integer value passing from one activity to other issue

我想将整数值从一个 activity 传递给另一个我尝试这样做但值没有传递请告诉我正确的解决方案。

这是我想将值传递给其他 activity 的 activity 代码。

Intent intent = new Intent(getApplicationContext(),
                            TotalCalories.class);
                    intent.putExtra("Total Sum", sum);
                    startActivity(intent);

这是我想要获取值的代码。

  Bundle extras = getIntent().getExtras();
    int sum = Integer.parseInt(extras.getString("Total Sum"));
    TextView textview = (TextView) findViewById(R.id.textViewname);
    textview.setText(extras.getString("Total Sum"));

在另一个 activity 中使用以下内容来获取整数

Intent i =getIntent();
int abc=  i.getIntExtra("TotalSum");
TextView textview =   (TextView)findViewById(R.id.textViewname);
textview.setText(String.valueOf(abc));

发件人activity:

Intent myIntent = new Intent(A.this, B.class);
myIntent.putExtra("intVariableName", intValue);
startActivity(myIntent);

接收方activity:

 Intent mIntent = getIntent();
 int intValue = mIntent.getIntExtra("intVariableName", 0);

注:收到的第二个参数'0',为默认值。如果您不通过 intent 传递任何值,那么它会将 0 分配给 intValue 变量。

像这样尝试更改您获取的字符串中的总和

 Intent intent = new Intent(getApplicationContext(),
                                    TotalCalories.class);
                            intent.putExtra("TotalSum", sum);
                            startActivity(intent);

在新 activity 的 Oncreate 中添加这个

  Bundle extras = getIntent().getExtras();
            int sum = Integer.parseInt(extras.getString("TotalSum"));
            TextView textview = (TextView) findViewById(R.id.textViewname);
            textview.setText("Your OutPut"+sum);

您的代码中有两个问题

1) 您不是在传递包,而是从包中获取值。

下面使用link How to pass a value from one Activity to another in Android?

2) 并获得整数值

Intent in =getIntent();
int abc=  in.getIntExtra("value");

这就是你的做法

int yourInt = 0; //initialize it

yourInt = yourIntergerValue;

Intent yourActivityIntent = new Intent(getApplicationContext(),YourActivity.class); 
yourActivityIntent.putExtra("yourIntKey",yourInt); 
startActivity(yourActivityIntent);

先把值放在FirstActivity

       Intent intent = new Intent(this, yourSecondActivity.class);
       intent.putExtra("intValue",value);
       startActivity(intent);

那么, SecondActivity 获取值

        Bundle exBundle= getIntent().getExtras();
        int intValue= exBundle.getInt("intValue");
        TextView textview = (TextView) findViewById(R.id.textViewname);
        textview.setText("Your Value is "+intValue);