我正在制作自己的项目,但被卡住了。
在第一个活动中从用户那里获取信息就可以了。
但是,当我尝试通过第二个活动在第三个活动中获取这些数字ints
时,它将显示默认值。
我正在使用Intent
进行尝试,但无法正常工作。
Intent intent = new Intent(this, active.class);
Intent intent2 = new Intent(this, BMR_Active.class);
intent.putExtra(EXTRA_TEXT_height,height );
intent.putExtra(EXTRA_TEXT_weight,weight);
intent.putExtra(EXTRA_TEXT_age,age);
startActivity(intent);
它给我一个默认值,即0(我已给出)在BMR活动中,那么我正在通过活动活动。
答案 0 :(得分:0)
您通过intent实现的putExtra方法可以正常工作,但是在开始第三个活动之前,您是否还在运行putExtra?
首先使用相同的方法将数据从第一活动传递到第二活动,然后从第二活动传递到第三活动。
附加说明:
在这种情况下,我通常会改用片段,将数据存储在活动中,片段将通过getActivity()
获取数据。这将消除多次传递数据的需要。
答案 1 :(得分:0)
基于您在评论中所说的关于将数据直接从活动1传递到活动3的内容,那么您可以执行以下操作:
Page1.class:
Intent receiveIntent = getIntent();
int numFromPage1 = receiveIntent.getIntExtra("Number");
Page3.class:
numFromPage1
我相信这应该可以回答您的问题。 int
将是一个{{1}},其中包含第1页的值。