Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android:Activity數據傳遞之對象(parcelable)

android:Activity數據傳遞之對象(parcelable)

編輯:關於Android編程

這篇文章裡面寫了用seralizable使對象序列化在Activity直之間進行傳遞

seralizable是在java api中的類,而在android中也有一個類使對象序列化,那就是parcelable。

那麼兩者之間有什麼區別呢?

seralizable:序列化到本地,是一個持久化的操作,效率慢一點

parcelable:只存在於內存,程序結束,序列化後的對象就不存在了。效率快一點

 

具體代碼如下 比較麻煩。但建議還是使用parcelable 因為它效率高 嘛 慢慢理解,如果想看其它代碼參見我的上一篇文章

obj

 

package com.example.activity;

import android.os.Parcel;
import android.os.Parcelable;



public class Obj implements Parcelable{
	String name;
	public String getName(){
		return name;
	}
	public void setName(String name){
		this.name=name;
	}
	@Override
	public int describeContents() {
		// TODO Auto-generated method stub
		return 0;
	}
	/*
	 * 靜態變量,一定不忘忘記
	 * */
	public static Parcelable.Creator CREATOR =new Creator() {
		
		@Override
		public Obj[] newArray(int arg0) {
			// TODO Auto-generated method stub
			return null;
		}
		
		/*
		 * 反序列化
		 * */
		@Override
		public Obj createFromParcel(Parcel source) {
			// TODO Auto-generated method stub
			Obj obj=new Obj();
			obj.setName(source.readString());
			return obj;
		}
	};
	
	/*
	 * 把變量序列化出去
	 * */
	@Override
	public void writeToParcel(Parcel dest, int arg1) {
		// TODO Auto-generated method stub
		dest.writeString(name);
	}
}

運行結果如下

 

\\

 

 
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved