首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

仿微博,新闻资讯类APP中列表中时间揭示

2013-11-18 
仿微博,新闻资讯类APP中列表中时间提示近段时间,由于项目需要,需要做资讯类APP,其中,要做一个排序列表,列

仿微博,新闻资讯类APP中列表中时间提示
近段时间,由于项目需要,需要做资讯类APP,其中,要做一个排序列表,列表中每个item中的时间值需要与当前设备的时间作比较,得到一些比较人性化的时间提醒。先把效果图放上:



代码实现:

import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/** * 时间工具类 * @author ck * 2013年11月16日 23:36:40 */public class DateUtil{public static final String PATTERN_1 = "MM-dd HH:mm";public static final String PATTERN_2 = "yyyy-MM-dd HH:mm";public static final String PATTERN_3 = "yyyy-MM-dd";/** * 得到一定模式的提示时间 * @param time * @param pattern * @return */public static String getPatternTime(long time, String pattern){SimpleDateFormat format = new SimpleDateFormat(pattern);return format.format(new Date(time));}/** * 得到比较之后的时间差值 * @param date * @return */public static String getCompareTime(long date){StringBuffer sb = new StringBuffer();long minMill = 60 * 1000;//1minlong hourMill = 60 * minMill;//1hourlong dayMill = 24 * hourMill;//1day//当前时间long now = Calendar.getInstance().getTimeInMillis();//相减之后时间差long deltime = now - date;long day = deltime / dayMill;if(day > 0){//大于1天if(day <= 3)sb.append(day + "天前");elsesb.append(getPatternTime(date, PATTERN_3));}else{//小于1天long hour = deltime / hourMill;if(hour > 0){//大于1小时sb.append(hour + "小时前");}else{//小于1小时long minute = deltime / minMill;if(minute > 0){//大于1分钟sb.append(minute + "分钟前");}else{//小于1分钟sb.append("刚刚");}}}return sb.toString();}}


如果代码中有什么问题,或者你有什么意见,欢迎指定~

热点排行