高仿简书Android,最新技术 android高仿今日头条富文本编辑

2024-01-13 04:10

本文主要是介绍高仿简书Android,最新技术 android高仿今日头条富文本编辑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言: 在经历了几个月的项目期限。我们遇到了前端发布文章,要用到富文本编辑的功能。在一番衡量下最终用到了richeditor-android第三方框架。实现原理就是通过webView和js实现前端富文本。有想了解的可以点开上面链接,研究研究。虽然richeditor-android已经帮我们实现了大部分核心内容,但是很多细节它都没有完善,这也是为什么他的issues达到170多的原因。也不知道它有没有停更。接下来是作者踩了N多坑之后,把功能基本补全。可以说是高仿“今日头条富文本编辑”。

一、先来看看都实现了补全了哪些功能

(这里不会重复richeditor-android原有功能,只会详细讲解补全的细节功能)

1.1、在没有焦点时,主动获取焦点并弹出软键盘

修改后: 在第一打开富文本编辑时,点击加粗,下划线或上传图片时,主动获取焦点并弹出软键盘。

fbe5a013582c

1.2、在光标主动回到某处,下方tab选中当前的样式,同理撤销和回退

修改后: 在光标变化,撤销回退,或者主动点删除时,下方tab会根据当前样式选中要选中的样式

fbe5a013582c

1.3、上传图片,自动换行,且自动滚动到底部。且充满屏幕

修改后: 选中图片后,插入图片自动换行,自动滚动到底部,弹出软键盘。(图片充满屏幕)

fbe5a013582c

1.4、点击图片,可编辑图片(剪裁),或删除图片

修改后: 点击图片增加了删除和编辑功能,编辑剪裁图片也是模仿头条的。(注:这里的图片选择和图片剪裁是其他第三方,后续给上链接,作者修改后增加了比例切换的动画,且适配了全面屏和处理了虚拟键)

fbe5a013582c

1.5、根据头条的排版样式,修改了文字,图片还有序号的排版样式

修改后: 原样式,比较不理想。在看了头条的排版样式后,修改了css样式。尽量模仿出头条的感觉

fbe5a013582c

1.6、选中文字后,在不点击屏幕前,选中文字都不变。高度模仿头条

修改后: 之前点击1下或者2下加粗时,选中文字会取消。现在不是主动点击屏幕,选中文字不会取消

fbe5a013582c

1.7、在作者在实现这块功能时,还遇到了缺少ssl证书,图片没法显示出来。还加了忽略ssl证书

在华为和小米都有出现过。出现的时候,我用头条app去上传图片也是遇到上传图片失败。过一会,手机又正常了。反正加上忽略ssl是一定可以成功的。

二、现在让我们一起看看发布文章重新编辑的功能吧、

fbe5a013582c

三、总结。

至此一个高仿头条的富文本就此而生。如果你开发遇到了或者有什么古怪的功能还不满足你的要求,请联系我。

这篇关于高仿简书Android,最新技术 android高仿今日头条富文本编辑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/600201

相关文章

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

Python实现PDF按页分割的技术指南

《Python实现PDF按页分割的技术指南》PDF文件处理是日常工作中的常见需求,特别是当我们需要将大型PDF文档拆分为多个部分时,下面我们就来看看如何使用Python创建一个灵活的PDF分割工具吧... 目录需求分析技术方案工具选择安装依赖完整代码实现使用说明基本用法示例命令输出示例技术亮点实际应用场景扩

MySQL 迁移至 Doris 最佳实践方案(最新整理)

《MySQL迁移至Doris最佳实践方案(最新整理)》本文将深入剖析三种经过实践验证的MySQL迁移至Doris的最佳方案,涵盖全量迁移、增量同步、混合迁移以及基于CDC(ChangeData... 目录一、China编程JDBC Catalog 联邦查询方案(适合跨库实时查询)1. 方案概述2. 环境要求3.

SpringSecurity整合redission序列化问题小结(最新整理)

《SpringSecurity整合redission序列化问题小结(最新整理)》文章详解SpringSecurity整合Redisson时的序列化问题,指出需排除官方Jackson依赖,通过自定义反序... 目录1. 前言2. Redission配置2.1 RedissonProperties2.2 Red

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

Android ClassLoader加载机制详解

《AndroidClassLoader加载机制详解》Android的ClassLoader负责加载.dex文件,基于双亲委派模型,支持热修复和插件化,需注意类冲突、内存泄漏和兼容性问题,本文给大家介... 目录一、ClassLoader概述1.1 类加载的基本概念1.2 android与Java Class