如何在android studio中的另一个活动中使用一个活动的变量

时间:2015-05-29 07:53:08

标签: java android

我有两个活动课程。来自用户的值在第一个活动中获取并存储在整数数据类型变量中。

final EditText areanumber1 = (EditText) findViewById(R.id.editTextplotarea);
areanumber1.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            int plotarea1 = Integer.parseInt(areanumber1.getText().toString());
            plotarea = plotarea1;
        }
});

单击下一个按钮时,它将移至下一个活动。现在我想在另一个活动中使用该plotarea变量。

第二项活动:

nextactivity = (Button) findViewById(R.id.buttonnext);
nextactivity.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        totallengthofwall = noofwalls * plotarea;
        startActivity(new Intent(getApplicationContext(), roomActivity.class));
    }
});

2 个答案:

答案 0 :(得分:1)

您应该使用 intent bundle 通过活动传递变量。

E.G:

Intent secondAcvitity = new Intent (getApplicationContext(), roomActivity.class);
secondAcvity.putExtra("NameOfVariable", plotarea1);
startActivity(secondActivity);

修改

第一项活动:

final EditText areanumber1 = (EditText) findViewById(R.id.editTextplotarea);
areanumber1.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            int plotarea1 = Integer.parseInt(areanumber1.getText().toString());
            plotarea = plotarea1;
            Intent secondActivity = new Intent (getApplicationContext(), roomActivity.class);
            secondActivity.putExtra("NameOfVariable", plotarea1);
            startActivity(secondActivity);
        }
});

然后你应该在你的新活动中调用意图:

第二项活动:

public .... onCreate(){
int newPlotarea1 = getIntent().getIntExtra("NameOfVariable", 0);
}

答案 1 :(得分:0)

为此,您可以使用Intent生成变量static或传递该变量。

    startActivity(new Intent(getApplicationContext(),roomActivity.class).putExtra("plotarea", plotarea));