返回

Android 用Intent 传递对象之 Serializable

发布时间:2022-11-12 20:07:57 285
# java# java# android

只是一个入门的小例子。没有弄太花哨。

程序结构:

Android 用Intent 传递对象之 Serializable_android

 

Person 就是实现Serializable 接口的对象。

Person.java

class Person implements Serializable {

private static final String TAG = "Person";
private static final long serialVersionUID = 1L;
int ID;
String Name;
int age;

public Person(int ID, String Name, int age) {
this.ID = ID;
this.Name = Name;
this.age = age;
}

public void printPerson() {
Log.d(TAG, "ID:" + ID);
Log.d(TAG, "Name:" + Name);
Log.d(TAG, "age:" + age);
}
}

MainActivity.java

package com.serializabletest;

import java.io.IOException;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;

public class MainActivity extends Activity {

public static final String TAG = "MainActivity";
/** 序列化测试
* @see android.app.Activity#onCreate(android.os.Bundle)
*/
private final String objName = "/mnt/sdcard/object.txt";

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTitle("Intent 传递对象");
setContentView(R.layout.activity_main);

}

public void onBtnClick(View view) throws IOException {

Person person = new Person(1, "张三", 26);
person.printPerson();
Bundle bundle = new Bundle();
bundle.putSerializable("person", person);
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtras(bundle);
startActivity(intent);

}
}

SecondActivity.java

package com.serializabletest;

import java.io.IOException;
import java.io.StreamCorruptedException;

import android.os.Bundle;
import android.view.View;
import android.app.Activity;
import android.content.Intent;

public class SecondActivity extends Activity {

public static final String TAG = "MainActivity";
/** 序列化测试
* @see android.app.Activity#onCreate(android.os.Bundle)
*/
private final String objName = "/mnt/sdcard/object.txt";

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTitle("Intent 传递对象");
setContentView(R.layout.activity_second);

Intent intent = getIntent();
Bundle bundle = intent.getExtras();
Person person = (Person) bundle.getSerializable("person");
person.printPerson();
}

public void onBtnClick(View view) throws StreamCorruptedException,
IOException, ClassNotFoundException {
this.finish();
}

}

 

 

 

 

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
Android 笔记2 2022-11-12 19:47:29