我们一般传递数据是用Intent的,这个也是官方的推荐的,但Intent不能传递那些不能系列化的对象。

为了解决这个问题,我们可以用静态变量来传递数据。


在目标activity中声明静态变量,但必须是public修饰的。

public class OtherActivity extends Activity {//定义静态变量public static String name;public static int age;private TextView textview;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.other);textview = (TextView)findViewById(R.id.msg);textview.setText("name:    "+name+"\n"+"age:    "+age);}}

在其他activity中可以直接使用静态变量传递数据给目标activity:
public class MainActivity extends Activity {private Button button;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        button = (Button)this.findViewById(R.id.st);        button.setOnClickListener(new OnClickListener() {public void onClick(View v) {// TODO Auto-generated method stubIntent intent = new Intent();intent.setClass(MainActivity.this, OtherActivity.class);OtherActivity.name="mayi";//直接调用静态变量OtherActivity.age=23;startActivity(intent);}});    }  }

更多相关文章

  1. Android 数据存储之SharedPreferences存储小记
  2. Android -SQLite数据库存储
  3. android直接用v4l2采集图片数据
  4. Android之从网络中获取数据并返回客户端的两种方式:XML格式返回
  5. Android 上移植 ghostscript-9.04 静态编译
  6. Android静态图片人脸识别的完整demo(附完整源码)
  7. android应用安全——数据安全
  8. 在 Android 应用程序中使用 Internet 数据
  9. 如何设置Android命令行环境变量

随机推荐

  1. 如何在postgres中更新时间戳字段的一部分
  2. SQL Server 2008 数据库镜像部署实例之三
  3. SQL Server表中某些字段含有水平制表符、
  4. Mysql中使用树的设计
  5. 数据库事务——还是这是一个规范化问题?
  6. fmdb 数据库升级1-----增加表字段
  7. CentOS 7下升级MySQL5.7.23的一个坑
  8. mysql根据查询结果创建表
  9. 报错pymysql.err.DataError: (1406, "Dat
  10. 请教用sql loader导入数据,最后一位是整数