一、一个Android 图片混排富文本编辑器控件(仿兴趣部落)

1.1 图片混排富文本控件

是一种图片和文字混合在一起的控件,文本之间可以插入图片,类似于网页的排版样式。

1.2 该控件主要是仿兴趣部落的效果,实现原理主要基于RecyclerView方案实现的。

二、演示效果图

演示效果图如下:

三、使用方法

3.1 首先初始化该控件:

在xml布局文件中和Activity类中声明和定义 该控件:

android:id="@+id/richEditor"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:paddingTop="10dp"

android:layout_below="@id/tv_header"

android:layout_above="@id/rl_action"

android:paddingBottom="10dp"/>// 声明定义控件

private XCRichEditor mRichEditor

3.2 插入/追加 图片或者文本内容://插入添加图片或者文本到控件中

List files = LocalImageHelper.getInstance().getCheckedItems();

Log.e("czm","file size="+files.size());

List items = new ArrayList<>();

for (int i = 0; i

Log.e("czm","file uri="+files.get(i).getOriginalUri());

Log.e("czm","file getThumbnailUri="+files.get(i).getThumbnailUri());

EditItem item = new EditItem();

item.setUri(Uri.parse(files.get(i).getOriginalUri()));

item.setType(1);

item.setContent(files.get(i).getOriginalUri());

items.add(item);

}

mRichEditor.addImage(items);

3.3完整使用方法:private XCRichEditor mRichEditor;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

Fresco.initialize(this);

findViewById(R.id.add_pic).setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

addPic();

}

});

mRichEditor = (XCRichEditor) findViewById(R.id.richEditor);

}

private void addPic() {

Intent intent = new Intent(MainActivity.this, LocalAlbum.class);

startActivityForResult(intent, ImageUtils.REQUEST_CODE_GETIMAGE_BYCROP);

}

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

Log.e("czm","requestCode="+requestCode);

switch (requestCode) {

case ImageUtils.REQUEST_CODE_GETIMAGE_BYCROP:

if (LocalImageHelper.getInstance().isResultOk()) {

LocalImageHelper.getInstance().setResultOk(false);

//获取选中的图片

List files = LocalImageHelper.getInstance().getCheckedItems();

Log.e("czm","file size="+files.size());

List items = new ArrayList<>();

for (int i = 0; i

Log.e("czm","file uri="+files.get(i).getOriginalUri());

Log.e("czm","file getThumbnailUri="+files.get(i).getThumbnailUri());

EditItem item = new EditItem();

item.setUri(Uri.parse(files.get(i).getOriginalUri()));

item.setType(1);

item.setContent(files.get(i).getOriginalUri());

items.add(item);

}

mRichEditor.addImage(items);

//清空选中的图片

files.clear();

//设置当前选中的图片数量

LocalImageHelper.getInstance().setCurrentSize(files.size());

}

//清空选中的图片

LocalImageHelper.getInstance().getCheckedItems().clear();

break;

default:

break;

}

}

四、文件目录截图

android富文本图片自适应,Android 图片混排富文本编辑器控件相关推荐

  1. Android 图片混排富文本编辑器控件

    概述 一个Android 图片混排富文本编辑器控件(仿兴趣部落) 详细 代码下载:http://www.demodashi.com/demo/12032.html 一.一个Android 图片混排富文 ...

  2. 安卓直接展示html,Android textView展示html图片,实现图文混排,点击查看大图片

    Android textView展示html图片,实现图文混排,点击查看大图片 最近要展示html在textView上,实现图文混排,并且图片可以点击放大,所以去研究了一下,效果图如下: 我们知道te ...

  3. Android仿抖音加载框之两颗小球转动控件

    Android仿抖音加载框之两颗小球转动控件 本篇文章已授权微信公众号 hongyangAndroid(鸿洋)独家发布. 效果图 安卓版抖音v2.5加载框: 本控件效果图: 使用方法 源码地址:And ...

  4. winform html编辑器控件,一个WinForm富文本编辑器控件

    WinForm 上的富文本编辑器简直不要太少,虽然有 RichEdit,但是这个鬼极难用而且复杂,在插入图片和表格的时候简直抓狂,还要理解复杂的 RTF 格式. 我希望有一个文本控件,包括基本的格式设 ...

  5. android富文本图片自适应,Android Span富文本图文混排 - ImageSpan(图文垂直居中)...

    ###为文字实现很丰富的特殊效果,当然少不了图文混排 so... 直接上效果(有直接使用和自定义垂直居中效果) ##1 ImageSpan: ImageSpan(context, resourceId ...

  6. android论文引用图片,Android自动解析html带图片,实现图文混排

    在android中,如何将html代码转换为text,然后显示在textview中呢,有一个简单直接的方法: Java textView.setText(Html.fromHtml(content)) ...

  7. RichEditeText——android图文混排富文本文章编辑器实现详解

    需求:android 实现富文本编辑器,并且实现html解析和生成. 功能点: 字体加粗,斜体,下划线,删除线 字体设置大小   默认大(18px),中(16px),小(14px) 字体设置颜色 换行 ...

  8. android开发图片自适应,android中用.9.patch的图片实现图片自适应

    1,如何实现图片自适应 如何实现图片自适应,我们用.9.patch, 左侧和上侧的直线共同决定了图片的缩放区域,左侧边直线绘制的区域决定了纵向缩放的区域:上侧直线绘制的区域决定了水平方向可以缩放的区域 ...

  9. 安卓控件使用系列2:TextView实现图文(图片和文字)混排

    使用TextView实现图文混排是有些开发者并没有实现过,下面来介绍一下如何实现. 整体思路:首先定义根据资源文件的变量名返回资源文件ID的方法,定义指向图片资源文件变量名html格式的字符串,写一个 ...

最新文章

  1. 基于php的地铁查询系统,HTML5 Canvas实现交互式地铁线路图
  2. vue使用@路径引入
  3. python从入门到精通pdf-跟老齐学Python:从入门到精通 完整版PDF[7MB]
  4. WARN No appenders could be found for logger的解决方法
  5. bgm去水印解决办法 PR模板音乐素材去水印的方法
  6. 如何阅读mysql源代码_我是如何开始阅读MySQL源码的?
  7. Allegro PCB导入网表后,PCB规则变化怎么办?
  8. Skip Locked——跳过加锁行
  9. Go操作MySQL数据库库
  10. Python爬取链家租房信息
  11. 前端基础(HTML,CSS,JavaScript)知识笔记,附:前端基础面试题!!
  12. 百度网盘不限速方法 直接跑满带宽
  13. SQLyog 新建mysql链接时 错误号码 2058
  14. 教你30岁前挣够500万
  15. tableau server在centos7.6上安装记录
  16. 《网络游戏核心技术与实战》读书笔记
  17. 自动控制原理实验一——离散控制系统建模和仿真
  18. 【SpringBoot】SpringBoot配置文件
  19. 数字化营销,为何网站如此重要?
  20. 【多径信道】多径信道的simulink仿真

热门文章

  1. Source Insight checking for modified files 卡顿(Reload externally modified files automatically取消)(未解决)
  2. VMware虚拟机:桥接、NAT、Host-only(仅主机)上网方式的区别
  3. python计算警告:overflow encountered in exp(指数函数溢出)(sigmoid函数的numpy数组计算方式)
  4. 【中级软考】PV操作是什么?(passeren【通过、申请资源、减量】、vrijgeven【释放、释放资源、增量】【荷兰文】)(用于进程间同步)
  5. pycharm提示 Method 'xxx' may be 'static'(类方法与静态方法)
  6. c语言while退出无限循环,请教:为什么我用while(!feof(fp))时会出现无限循环????...
  7. Java设计模式——为什么要用枚举实现单例模式(避免反射、序列化问题)
  8. Mysql逻辑架构介绍
  9. SpringBoot 整合 Thymeleaf 如何使用后台模板快速搭建项目
  10. Response文件下载