Android中在不同Activity中传递变量,通常使用Intent中Bundle添加变量的操作方法。

保存参数时:

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");

不过在多个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属性就可以了,如下面所示:

<application android:name=".MyApp" android:icon="@drawable/icon" android:label="@string/app_name">  

PS:这里不是新建<application></application>是在最原本的上加NAME属性

使用时:

class Blah extends Activity {     @Override    public void onCreate(Bundle b){       ...       MyApp appState = ((MyApp)getApplicationContext());       String state = appState.getState();       ...     }   }  

更多相关文章

  1. Android中使用log4j
  2. xUtils3注解方式编程
  3. Android(安卓)开发中涉及到的设计模式
  4. 使用kotlin开发android
  5. Android(安卓)使用 MPAndroidChart 实现折线图
  6. Android(安卓)Screen Monitor使用
  7. 箭头函数的基础使用
  8. NPM 和webpack 的基础使用
  9. Python list sort方法的具体使用

随机推荐

  1. Eclipse下android相关设置
  2. Android(安卓)Notification RemoteViews
  3. android ATD configeration
  4. android 笔记 --- Android中Menu应用
  5. 关于ListView中假如Button,EditText无法响
  6. Android(安卓)4.0 用户输入子系统
  7. android传感器总结
  8. Android(安卓)驱动开发文章收录
  9. Android中ExpandableListView的使用
  10. Android通过http协议POST传输方式(输出流