在Android中使用意图和捆绑整数

时间:2016-02-01 01:59:13

标签: java android android-intent android-bundle

假设我想将数据从一个活动/类传递到另一个涉及整数数据类型的数据。这是我到目前为止为MainActivity(第一)课程所做的:

@Override
public void onClick(View v) {
    Intent i = new Intent(this, SecondActivity.class);
    final int x = 3;
    i.putExtra("new variable", x);
    startActivity(i);
}

对于接收类,SecondActivity:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_second);

    Bundle i = getIntent().getExtras();
    String value = i.getString("new variable");
    tvResult = (TextView)findViewById(R.id.textViewResult);
    tvResult.setText(value);
}

但是,SecondActivity在第二个屏幕上没有显示任何内容......可能是因为我需要先将值转换为int吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

  

我想将数据从一个活动/类传递到另一个活动/类   整数数据类型......

xint,但SecondActivity i.getString用于从Bundle获取返回String而不是int的数据。

使用Bundle.getIntint获取Bundle

int value = i.getInt("new variable");

还可以使用String.valueOfint中将TextView显示为:

tvResult.setText(String.valueOf(value));