android仿微博头像_Android仿新浪微博个人信息界面及其他效果
本教程为大家分享了Android微博个人信息界面设计代码,供大家参考,具体内容如下
如果你已经实现前面的功能那个这个人信息界面便是小菜一碟,此处不作叙述。
补充
1.时间处理类:
处理微博发出时间距现在时刻的时间。应该是比较容易理解的。
/**
* 时间处理类
*/
public class DateUtils {
public String getInterval(String createtime) { //传入的时间格式必须类似于2012-8-21 17:53:20这样的格式
String interval = null;
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
ParsePosition pos = new ParsePosition(0);
Date d1 = sd.parse(createtime, pos);
//用现在距离1970年的时间间隔new Date().getTime()减去以前的时间距离1970年的时间间隔d1.getTime()得出的就是以前的时间与现在时间的时间间隔
long time = new Date().getTime() - d1.getTime();// 得出的时间间隔是毫秒
int day = 24 * 3600000;
int week = day * 7;
if (time / 1000 < 10 && time / 1000 >= 0) {
//如果时间间隔小于10秒则显示“刚刚”time/10得出的时间间隔的单位是秒
interval = "刚刚";
} else if (time / 3600000 < 24 && time / 3600000 > 0) {
//如果时间间隔小于24小时则显示多少小时前
int h = (int) (time / 3600000);//得出的时间间隔的单位是小时
interval = h + "小时前";
} else if (time / 60000 < 60 && time / 60000 > 0) {
//如果时间间隔小于60分钟则显示多少分钟前
int m = (int) ((time % 3600000) / 60000);//得出的时间间隔的单位是分钟
interval = m + "分钟前";
} else if (time / 1000 < 60 && time / 1000 > 0) {
//如果时间间隔小于60秒则显示多少秒前
int se = (int) ((time % 60000) / 1000);
interval = se + "秒前";
} else if (time / day < 7 && time / day > 0) {
int d = (int) (time / day);
interval = d + "天前";
} else if (time / week < 5 && time / week > 0) {
int w = (int) (time / week);
interval = w + "周前";
} else {
//大于一个月的,则显示正常的时间,但是不显示秒
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
ParsePosition pos2 = new ParsePosition(0);
Date d2 = (Date) sdf.parse(createtime, pos2);
interval = sdf.format(d2);
}
return interval;
}
}
2.字符串中表情处理类:
正则表达式匹配相应表情字段,若匹配则使用SpannableString将该字段的文字用表情图片代替。
public class StringUtils {
public static SpannableString getEmotionContent(final Context context, final TextView tv, String source) {
SpannableString spannableString = new SpannableString(source);
Resources res = context.getResources();
String regexEmotion = "\\[([\u4e00-\u9fa5\\w])+\\]";
Pattern patternEmotion = Pattern.compile(regexEmotion);
Matcher matcherEmotion = patternEmotion.matcher(spannableString);
Bitmap scaleBitmap;
int size = (int) tv.getTextSize();
while (matcherEmotion.find()) {
// 获取匹配到的具体字符
String key = matcherEmotion.group();
// 匹配字符串的开始位置
int start = matcherEmotion.start();
// 利用表情名字获取到对应的图片
Integer imgRes = EmotionUtils.getImgByName(key);
if (imgRes != null && size > 0) {
// 压缩表情图片
Bitmap bitmap = BitmapFactory.decodeResource(res, imgRes);
if (bitmap != null) {
scaleBitmap = Bitmap.createScaledBitmap(bitmap, size, size, true);
ImageSpan span = new ImageSpan(context, scaleBitmap);
spannableString.setSpan(span, start, start + key.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}
}
return spannableString;
}
}
3.manifest文件:
由于该应用涉及诸多权限,故需要声明权限。此处由于上次多张图片会使内存溢出,故需申请额外内存
package="study.sinatest">
android:largeHeap="true"
android:allowBackup="true"
android:hardwareAccelerated="false"
android:icon="@mipmap/weibologo"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
android:name=".SplashActivity"
android:configChanges="keyboardHidden"
android:launchMode="singleTask"
android:screenOrientation="portrait">
android:name=".OAuthActivity"
android:launchMode="singleTask">
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version"/>
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"/>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
android仿微博头像_Android仿新浪微博个人信息界面及其他效果相关推荐
- android仿微博头像_Android 仿instagram和微博的头像点击加载动画
ins.gif 对,就是转圈圈的这个,这么酷炫,我也要做一个!在整理代码和总结时候,神奇的事情发生了,在我日常刷微博的时候点开微博客户端时候突然发现: weibo.gif 缘分啊,发现了微博Andro ...
- android仿微博头像_Android仿微信微博多图展示效果
1.简介 这是一个用于实现像微信朋友圈和微博的类似的九宫格图片展示控件,通过自定义viewgroup实现,使用方便. 多图根据屏幕适配,单张图片时需要自己指定图片的宽高: 2.使用方法 引用: com ...
- android仿微博头像_Android 自定义 View 集锦|自定义圆形旋转进度条,仿微博头像加载效果...
微博 App 的用户头像有一个圆形旋转进度条的加载效果,看上去效果非常不错,如图所示: 据说 Instagram 也采用了这种效果.最近抽空研究了一下,最后实现的效果是这样: 基本上能模拟出个大概,代 ...
- android仿微博头像_仿微博点击头像加载动画
预览图 原理 整个效果分成两部分.一部分为弧度动画,一部分为点点动画 弧度动画就是画弧线,动画改变弧度就可以了 点点动画比较复杂.总共分为两步,1.计算非弧线的地方可以容纳的点点个数,然后画出来:2. ...
- android金币动效_Android 仿余额宝数字跳动动画效果完整代码
一:想都不用想的,有图有真相,看着爽了,在看下面源码 二:实例源码分析 ①:首先定义接口 package com.demo.tools.view; /** * 数字动画自定义 * * @author ...
- PHP Uploadify+jQuery.imgAreaSelect插件+AJAX 实现图片上传裁剪 仿微博头像上传功能
http://blog.csdn.net/as66t/article/details/11688217 http://blog.mc-zone.me/article/226#comment-2991 ...
- mysql仿网易评论_Android仿抖音评论列表(加评论功能)/网易云音乐列表
老规矩 先上效果图 1542355190753.gif 附下Demo 如果想要实现抖音一样的评论功能,就要再列表dialog上面再弹出一个dialog. 那么问题来了:当评论的dialog弹出来的时候 ...
- android java 调试快捷键_Android Studio 代码页跳界面 /java和XML快速切换技巧
从csdn博客搬家过来,请多关照! 之前一直在csdn博客,也写了不少关于java的文章,主要是学习java上的一些问题.想通过这种方式来加深对问题的认知,同时也可以帮助到志同道合的人,一起在编程的道 ...
- android 仿微博评论编辑框_Android 仿微博的点赞功能的实现原理(持续点赞再取消)...
产品需求,实现类似微博的持续点赞再取消功能,因为自己也偶尔刷微博,对这功能有一定的使用上的了解, 至于微博点赞的具体实现我并不知道,微博点赞在断网的情况下依然能点赞,不会提示网络异常,等有网络之后 重 ...
最新文章
- 2682. 【WC2012选拔12.17】最长双回文串
- python 图片旋转角度_OpenCV获取图像的旋转角度
- 腾讯与中国人民大学开源最新研究成果:3TS腾讯事务处理技术验证系统
- ASP.NET Core中的OWASP Top 10 十大风险-跨站点脚本攻击 (XSS)
- nginx正向代理,反向代理概念
- linux查看svn信息,SVN 查看历史信息
- html如何让图片背景透明,html – 如何让我的网站的背景透明,而不使内容(图像和文字)也是透明的?...
- 6 个步骤,搞定 AI 车牌识别器!(附详细分析)
- 数据计算中间件技术综述
- DFA极简化和NFA确定化
- 1000套安卓(Android)毕业设计(带论文)、大作业、实例快速下载 (Android Studio)
- 3d max插件的基本知识和安装方法
- msp432快速入门第三节之让LED闪起来
- 强大的 Fresco(加载网络和本地图片)简单使用
- 清朝12位皇帝简介【顺康雍乾嘉道咸同光宣】
- 第五人格怎么投屏 轻松玩电脑版手游
- 初学者笔记:Scanf间隔符号的使用
- CAN收发器TJA1040简介
- 【论文阅读|深读】 GraphSAGE:Inductive Representation Learning on Large Graphs
- 高德地图搜索附近地址所遇到的问题
热门文章
- MySQL 8.0 新特性之横向(LATERAL)派生表
- Web 上的隐形负担:视频编解码
- 深度学习:什么是backbone,benchmark,baseline
- 采集工具有哪些-数据采集工具有哪些-网站采集工具
- vCenter(PSC)正常更改或重置administrator@vsphere.local用户的密码方法
- 重修-龙珠计划机器学习训练营task1-part2学习笔记
- HTML+CSS学习
- 架构:风控防刷策略。
- [生存志] 第139节 汉书地理作志
- android开机启动界面,26_自定义 Android 启动页面