如何使用putExtra()和getExtras()代码获取int值?

时间:2019-04-05 13:11:23

标签: java android android-intent

标题说的是,我在下面尝试过,但是没有用。我还应该将getExtras()放在MainActivity.class的什么位置?我在OnCreate()的内部和外部都尝试过,但是我的应用在启动时一直崩溃。我也找不到崩溃的错误。

SettingsActivity.class

public void onClick(View v) {
                Intent intent = new Intent(SettingsActivity.this, MainActivity.class);
                intent.putExtra("isMeasurement", 2);
                startActivity(intent);
            }

MainActivity.class

public int isMeasurement = getIntent().getExtras().getInt("isMeasurement");

3 个答案:

答案 0 :(得分:2)

这就是您应该传递数据的方式

{32*32,3*32,3*1}={1024,96,3}

在您的onCreate内

这是您可以在MainActivity中检索数据的方法

Intent intent = new Intent(SettingsActivity.this, MainActivity.class);
            intent.putExtra("isMeasurement", 2);
            startActivity(intent);

答案 1 :(得分:0)

在其他活动中获取数据存在问题。 正确的方法如下:

@Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
    int isMeasurement = getIntent().getIntExtra("isMeasurement",0);
}

答案 2 :(得分:0)

  

SettingsActivity:

Intent intent = new Intent(SettingsActivity.this, MainActivity.class);
            intent.putExtra("isMeasurement", 2);
            startActivity(intent);

  

MainActivity:

@Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
    int isMeasurement = getIntent().getIntExtra("isMeasurement",0);
}