User.class
public class User {
private UUID mId;
private String mName;
private String mSex;
private Date mBirth;
public User() {
mId=UUID.randomUUID();
mBirth=new Date();
}
public UUID getId() {
return mId;
}
public String getName() {
return mName;
}
public String getSex() {
return mSex;
}
public void setSex(String sex) {
mSex = sex;
}
public void setName(String name) {
mName = name;
}
public Date getBirth() {
return mBirth;
}
public void setBirth(Date birth) {
mBirth = birth;
}
}
UserLab.class
public class UserLab {
private static UserLab sUserLab;
private List<User> mUsers;
private UserLab(Context context){
mUsers=new ArrayList<>();
}
public static UserLab get(Context context){
if(sUserLab==null){
sUserLab=new UserLab(context);
}
return sUserLab;
}
public List<User> getUserss() {
return mUsers;
}
public void addUser(User u){
mUsers.add(u);
}
public void removeUser(User u){
mUsers.remove(u);
}
public User getUser(UUID id){
for(User user:mUsers){
if(user.getId().equals(id)){
return user;
}
}
return null;
}
}
在Fragment中使用模型与单例
//添加用户
UserLab.get(getActivity()).addUser(mUser);
//获取用户(s)
List<User> users=UserLab.get(getActivity()).getUserss();
//移除用户
UserLab.get(getActivity()).removeUser(mUser);
//获取特定用户
mUser=UserLab.get(getActivity()).getUser(userId);