我不知道这是否可能,或者它们是否是更好的编程习惯,但我想知道如何在另一个活动中使用在主要活动中声明的变量。源代码片段示例如下所示:
public class MainActivity extends ActionBarActivity {
private int a, b;
private EditText first, second;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
first = (EditText) findViewById(R.id.first_entry);
second = (EditText) findViewById(R.id.second_entry); }
public void doMath(View view) throws Exception {
try {
if (!first.getText().toString().equals("")) {
a = Integer.parseInt(first.getText().toString());
}
else {
a = 0;
}
if (!second.getText().toString().equals("")) {
b = Integer.parseInt(gpa_credits1.getText().toString());
}
else {
b = 0;
}
int sum = a + b; }catch (Exception e) {}
现在,我想创建一个新的活动来使用变量“ sum”来做一些数学运算,例如...
public class first_year_second_semester extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.newActivity);
int blah = 5;
private TextView soln;
soln = (TextView) findViewById(R.id.the_soln);
soln = (blah / sum) //i.e sum from the previous activity...please i need this
}
您可以使用意图或共享首选项将值从一个活动传递到其他活动。
Intent intent=new Intent(MainActivity.this,year_second_semester.class);
intent.putExtras("sum",sum);
startActivity(intent);
然后在下一个活动中,您可以获得此值。
或使用共享首选项:内部类:SharedPreferences共享;
内部onCreate:shared = getSharedPreferences(“ app”,Context.MODE_PRIVATE);
在求和= a + b之后计算和Ie;
Editor edit=shared.edit();
edit.putString("sum",sum);
edit.commit();
在下一个活动中:在类内部:SharedPreferences已共享;
内部oncreate:shared = getSharedPreferences(“ app”,Context.MODE_PRIVATE);
如果需要:字符串yourvalue = shared.getString(“ sum”,“默认值”);
在这里,您的价值将是主要活动的总和。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句