使用Parcelable传递对象数据:在实体类中实现Parcelable接口,然后通过Intent传递该对象。代码
时间: 2024-05-14 09:19:32 浏览: 92
实现Parcelable接口的步骤如下:
1. 在实体类中实现Parcelable接口,并重写以下方法:
```
public class MyData implements Parcelable {
private int mData;
public int describeContents() {
return 0;
}
public void writeToParcel(Parcel out, int flags) {
out.writeInt(mData);
}
public static final Parcelable.Creator<MyData> CREATOR
= new Parcelable.Creator<MyData>() {
public MyData createFromParcel(Parcel in) {
return new MyData(in);
}
public MyData[] newArray(int size) {
return new MyData[size];
}
};
private MyData(Parcel in) {
mData = in.readInt();
}
}
```
2. 将对象数据打包到一个Parcel对象中,以便将其传递给其他组件:
```
MyData data = new MyData(42);
Intent intent = new Intent(this, NextActivity.class);
intent.putExtra("myData", data);
startActivity(intent);
```
3. 在接收方Activity中,从Intent中获取传递的对象数据:
```
public class NextActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_next);
Intent intent = getIntent();
MyData data = intent.getParcelableExtra("myData");
}
}
```
通过以上步骤,可以方便地使用Parcelable传递对象数据。
阅读全文