当前位置: 首页 > news >正文

做风水网站赚钱吗/如何创建一个个人网站

做风水网站赚钱吗,如何创建一个个人网站,竹业网站建设,wordpress移动顶部导航代码地址:https://github.com/Luction/AndroidRichText AndroidRichText帮助实现像QQ,微信一样的,一个TextView里既有文字又有表情又有图片的效果,采用插件化的框架,代码简单,可拓展性强。 基础框架包只有四…

代码地址:https://github.com/Luction/AndroidRichText

  AndroidRichText帮助实现像QQ,微信一样的,一个TextView里既有文字又有表情又有图片的效果,采用插件化的框架,代码简单,可拓展性强。

基础框架包只有四个java文件, 

RichTextWrapper :TextView的包裹类,实现支持富文本,通过new RichTextWrapper(TextView v)来构造。
RTMovementMethod: 继承自Android原生的LinkMovementMethod,重写onTouchEvent方法,优化了ClickSpan(点击响应的文字区域)的点击响应。
Resolver:一个接口,我们需要实现一种支持富文本类型时就只需要写一个相应的Resolver重写它的resolve方法,在resolve方法里实现所要实现的富文本样式。

RichTexts:一些公用方法、类、接口的集合。

接下来简单介绍一下如何使用这个框架:
//直接根据TextView new一个RichTextWrapper,之后所有的事情都可以用它完成;
RichTextWrapper richTextWrapper = new RichTextWrapper((TextView) findViewById(R.id.tv_main));//比如QQ希望在TextView里同时有表情和图片那么就可以相应的写两个Resolver来实现分别的功能,直接在初始化时调用addResolver传入就可以。
richTextWrapper.addResolver(ImageResolver.class,EmotionResolver.class);//同时,我们如果希望点击图片时有响应事件,可以使用setOnRichTextListener来处理,参数要传入对应的Resolver,这里是ImageResolver,如果我们需要自定义的XXResolver处理的富文本效果实现响应事件,那么久传入XXResolver.class;
richTextWrapper.setOnRichTextListener(ImageResolver.class, new RichTexts.RichTextClickListener() {@Overridepublic void onRichTextClick(TextView v, String content) {//在这里可以进行图片的点击事件处理//do something
    }
});//最后直接把文本set进去就可以
richTextWrapper.setText(content);
addResolver可以传入任意个Resolver,让TextView支持我们需要的富文本类型,如果需要取消支持某种富文本类型,只需要不传入该Resolver比如上文中如果只需要支持表情,那么
richTextWrapper.addResolver(EmotionResolver.class);

不需要做太多代码改动,比较灵活。

那么此外,大家可以看出来另一个关键的地方就是Resolver;Resolver是如何实现呢?这边使用一个Demo来简单示例:

public class ImageResolver implements Resolver {public static final String IMG_MATCH_REGULAR = "\\[img](\\w+)\\[/img]";public static Pattern PATTERN = Pattern.compile(IMG_MATCH_REGULAR);//参数中的sp是该Textview的content,extra是方便我们使用的一个附加的数据,默认是空的,我们如果希望从外面传入数据到这里面可以通过richTextWrapper.putExtra()来实现
  @Overridepublic void resolve(final TextView textView, final Spannable sp, SparseArray<Object> extra, final RichTexts.RichTextClickListener listener) {Matcher matcher = PATTERN.matcher(sp);final Context context = textView.getContext();while(matcher.find()){String content = matcher.group(1);final RichTexts.TaggedInfo info = new RichTexts.TaggedInfo(matcher.start(),matcher.end(),content);if(listener!=null) {RichTexts.RichTextClickSpan span = new RichTexts.RichTextClickSpan(listener,info.content);sp.setSpan(span, info.start, info.end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);}RichTexts.StickerSpan testSpan = new RichTexts.StickerSpan(context, R.drawable.icon,100,100);RichTexts.setImageSpan(sp, info, testSpan);textView.postInvalidate();}}

上面的示例中,RichTextClickSpan是大家如果需要实现点击效果必须要用到的,而StickerSpan则是实现图像效果,以上一个可点击的图像的Resolver就实现了,当然上文中是随便传入一个icon,真实情况,大家需要自己根据内容以及所期待的效果自己再做些调整。。

代码地址:AndroidRichText源码地址

转载于:https://www.cnblogs.com/zhujiabin/p/5808232.html

http://www.lbrq.cn/news/1427221.html

相关文章:

  • 企业每月报账在哪个网站做/企业互联网推广
  • 跨境电商网站系统开发/百度网盘客服人工电话
  • 政府网站的建设背景/西安网络推广外包公司
  • 福田网站建设设计/百度大数据中心
  • 图片分享功能网站开发/电商平台开发需要多少钱
  • 天津建站模板搭建/怎样在百度上发布自己的文章
  • wordpress页脚居中/福州网站优化
  • 婚礼策划网站模板/淘宝关键词优化怎么弄
  • 智慧党建门户网站建设方案/免费网站统计
  • 网站开发前台/新媒体运营怎么自学
  • qq小程序在哪里打开/厦门seo测试
  • 江苏专业网站建设费用/武汉seo软件
  • 哪个网站的ps元素好/网络营销案例分析
  • 绥化市住房和城乡建设网网站/沈阳百度推广哪家好
  • 外贸工厂 网站建设/网页设计与网站建设教程
  • 外贸网站排行榜前十名/企业推广方案
  • 自己的网站怎样做优化/中国域名注册官网
  • 贵阳网站设计与开发怎么做/如何优化网页
  • 如何入驻亚马逊跨境电商/广州seo托管
  • 浙江省建设监理协会官方网站/网络热词缩写
  • 手机网站设计公/考拉seo
  • 免费网站模板源码下载/网站制作优化排名
  • 上线了建的网站免费吗/b2b是什么意思
  • 做语文综合题的网站/江苏seo网络
  • 沈阳php网站/长春网长春关键词排名站设计
  • 区块链做网站都有哪些内容呢/网站推广怎么做才有效果
  • 做网站的公司好坑啊/百度手机助手下载苹果版
  • 辽宁手机版建站系统信息/抖音seo优化排名
  • 网站建设外包需要注意哪些/电脑培训学校排名
  • 邢台网站定制/专业的seo外包公司
  • 洛谷 P2842 纸币问题 1 -普及-
  • 【测试工具】JMeter基本使用及MySQL数据库压力测试
  • 第3节 深度学习避坑指南:从过拟合到玄学优化
  • 当img占不满div时,图片居中显示,两侧加当前图片模糊效果
  • Excel多级数据结构导入导出工具
  • esp32s3 驱动pcm5102a 的 wav播放器,mqtt控制