Android开发数据传递方法的方法是多种多样的,那么Activity间传递的数据通常相对简单,但在实际开发中有时会传递更复杂的数据,那么android开发时Activity中传递变量的参数大家都了解吗?下面就跟着武林技术频道小编的步伐一起来了解一下吧!
保存参数时:
Intent intent = new Intent();
intent.setClass(A.this, B.class);
Bundle bundle = new Bundle();
bundle.putString("name", "xiaozhu");
intent.putExtras(bundle);
startActivity(intent);
读取参数:
Intent intent = this.getIntent();
Bundle bundle = intent.getExtras();
String name = bundle.getString("name");
[java] view plaincopy
Intent intent = this.getIntent();
Bundle bundle = intent.getExtras();
String name = bundle.getString("name");
不过在多个Activity中经常使用同一变量时,使用Bundle则比较麻烦,每次调用Activity都需要设置一次。
如想在整个应用中使用,在java中一般是使用静态变量,而在android中有个更优雅的方式是使用Application context。
新建一个类,继承自Application
class MyApp extends Application {
private String myState;
public String getState() {
return myState;
}
public void setState(String s) {
myState = s;
}
}
在AndroidManifest.xml的application加个name属性就可以了,如下面所示:
使用时:
class Blah extends Activity {
@Override
public void onCreate(Bundle b){
...
MyApp appState = ((MyApp)getApplicationContext());
String state = appState.getState();
...
}
}
上文是关于android开发时Activity中传递变量的参数介绍,相信大家都有了一定的了解,想要了解更多的相关介绍,请继续关注武林技术频道吧!