Android Fragment学习笔记(2) ----使用ListFragment显示列表(上)

上文的创建的“陋习”app模型层仅包含一个Crime实例,下面将添加一个包含Crime的列表


app的模型层将新增一个CrimeLab对象,该对象是一个数据集中存储池,用来存储Crime对象。当然也应相应的增加一个CrimeListActivity和CrimeListFragment。

1.更新CriminalIntent的模型层

单例与数据集中存储

在本app中,crime数组对象将存储在一个单例里。单例是特殊的Java类,在创建实例时,一个类仅允许创建一个实例

创建单例(CrimeLab.java):

<span style="font-family:Microsoft YaHei;">package com.example.crimialintent;

import android.content.Context;

/*
 * 在本app中,crime数组对象将存储在一个单例里。单例是特殊的Java类,在创建实例时,一个类仅允许创建一个实例
 * 应用在内存存在多久,单例就能存在多久
 * 要创建单例,须创建一个带有似有构造方法及get()方法的类,其中get()方法返回实例。
 */
public class CrimeLab {
	
	private static CrimeLab sCrimeLab;  //s前缀代表静态变量
	private Context mAppContext;
	
	private CrimeLab(Context appContext){
		mAppContext = appContext;
	}

/**
 * 注意在此方法中,我们并没有直接将Context参数传给构造方法,以为该context可能是activity或者另一个context对象,在应用整个
 * 生命周期中我们无法保证CrimeLab需要用到context,context就一直存在,所以,为了保证单例总是有Context可以使用,可以调用
 * getApplicationContext()方法。
 */
	public static CrimeLab get(Context c){
		
		if (sCrimeLab == null) {
			sCrimeLab = new CrimeLab(c.getApplicationContext());
		}
		return sCrimeLab;
		
	}

}
</span>

创建可容纳Crime对象的ArrayList (CrimeLab.java)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值