两种方式:
第一种:将对象定义成 Parcelable 类型
public class MasterItem implements Parcelable{
private int id;
private String nickName;
private String figureUrl;
private int action;
private String sign;
private int followersCount;
private String charmLevel;
private String charmLevelImg;
private int isFollowed;
private int viewType;// item 显示类型
public int getViewType() {
return viewType;
}
public void setViewType(int viewType) {
this.viewType = viewType;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public String getFigureUrl() {
return figureUrl;
}
public void setFigureUrl(String figureUrl) {
this.figureUrl = figureUrl;
}
public int getAction() {
return action;
}
public void setAction(int action) {
this.action = action;
}
public String getSign() {
return sign;
}
public void setSign(String sign) {
this.sign = sign;
}
public int getFollowersCount() {
return followersCount;
}
public void setFollowersCount(int followersCount) {
this.followersCount = followersCount;
}
public String getCharmLevel() {
return charmLevel;
}
public void setCharmLevel(String charmLevel) {
this.charmLevel = charmLevel;
}
public String getCharmLevelImg() {
return charmLevelImg;
}
public void setCharmLevelImg(String charmLevelImg) {
this.charmLevelImg = charmLevelImg;
}
public int getIsFollowed() {
return isFollowed;
}
public void setIsFollowed(int isFollowed) {
this.isFollowed = isFollowed;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(id);
dest.writeString(nickName);
dest.writeString(figureUrl);
dest.writeInt(action);
dest.writeString(sign);
dest.writeInt(followersCount);
dest.writeString(charmLevel);
dest.writeString(charmLevelImg);
dest.writeInt(isFollowed);
dest.writeInt(viewType);
}
}
public static MasterFragment newInstance(List<MasterItem> fItems) {
MasterFragment f = new MasterFragment();
Bundle args = new Bundle();
args.putParcelableArrayList("fItems", (ArrayList<? extends Parcelable>) fItems);
f.setArguments(args);
return f;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle bundle = getArguments();
if(bundle != null){
showItems = bundle.getParcelableArrayList("fItems");
}
}
第二种:将对象定义成 Serializable 类型
public class MasterItem implements Serializable{
private int id;
private String nickName;
private String figureUrl;
private int action;
private String sign;
private int followersCount;
private String charmLevel;
private String charmLevelImg;
private int isFollowed;
private int viewType;// item 显示类型
public int getViewType() {
return viewType;
}
public void setViewType(int viewType) {
this.viewType = viewType;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public String getFigureUrl() {
return figureUrl;
}
public void setFigureUrl(String figureUrl) {
this.figureUrl = figureUrl;
}
public int getAction() {
return action;
}
public void setAction(int action) {
this.action = action;
}
public String getSign() {
return sign;
}
public void setSign(String sign) {
this.sign = sign;
}
public int getFollowersCount() {
return followersCount;
}
public void setFollowersCount(int followersCount) {
this.followersCount = followersCount;
}
public String getCharmLevel() {
return charmLevel;
}
public void setCharmLevel(String charmLevel) {
this.charmLevel = charmLevel;
}
public String getCharmLevelImg() {
return charmLevelImg;
}
public void setCharmLevelImg(String charmLevelImg) {
this.charmLevelImg = charmLevelImg;
}
public int getIsFollowed() {
return isFollowed;
}
public void setIsFollowed(int isFollowed) {
this.isFollowed = isFollowed;
}
}
public static MasterFragment newInstance(List<MasterItem> fItems) {
MasterFragment f = new MasterFragment();
Bundle args = new Bundle();
args.putSerializable("fItems", (Serializable) fItems);
f.setArguments(args);
return f;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle bundle = getArguments();
if(bundle != null){
showItems = (List<MasterItem>) bundle.getSerializable("fItems");
}
}