高仿简书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开发中gradle下载缓慢的问题级解决方法

《Android开发中gradle下载缓慢的问题级解决方法》本文介绍了解决Android开发中Gradle下载缓慢问题的几种方法,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、网络环境优化二、Gradle版本与配置优化三、其他优化措施针对android开发中Gradle下载缓慢的问

Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)

《Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)》本文介绍了如何使用Python和Selenium结合ddddocr库实现图片验证码的识别和点击功能,感兴趣的朋友一起看... 目录1.获取图片2.目标识别3.背景坐标识别3.1 ddddocr3.2 打码平台4.坐标点击5.图

Java中实现订单超时自动取消功能(最新推荐)

《Java中实现订单超时自动取消功能(最新推荐)》本文介绍了Java中实现订单超时自动取消功能的几种方法,包括定时任务、JDK延迟队列、Redis过期监听、Redisson分布式延迟队列、Rocket... 目录1、定时任务2、JDK延迟队列 DelayQueue(1)定义实现Delayed接口的实体类 (

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

shell脚本自动删除30天以前的文件(最新推荐)

《shell脚本自动删除30天以前的文件(最新推荐)》该文章介绍了如何使用Shell脚本自动删除指定目录下30天以前的文件,并通过crontab设置定时任务,此外,还提供了如何使用Shell脚本删除E... 目录shell脚本自动删除30天以前的文件linux按照日期定时删除elasticsearch索引s

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

PyCharm 接入 DeepSeek最新完整教程

《PyCharm接入DeepSeek最新完整教程》文章介绍了DeepSeek-V3模型的性能提升以及如何在PyCharm中接入和使用DeepSeek进行代码开发,本文通过图文并茂的形式给大家介绍的... 目录DeepSeek-V3效果演示创建API Key在PyCharm中下载Continue插件配置Con

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干

MySQL 缓存机制与架构解析(最新推荐)

《MySQL缓存机制与架构解析(最新推荐)》本文详细介绍了MySQL的缓存机制和整体架构,包括一级缓存(InnoDBBufferPool)和二级缓存(QueryCache),文章还探讨了SQL... 目录一、mysql缓存机制概述二、MySQL整体架构三、SQL查询执行全流程四、MySQL 8.0为何移除查

MySql9.1.0安装详细教程(最新推荐)

《MySql9.1.0安装详细教程(最新推荐)》MySQL是一个流行的关系型数据库管理系统,支持多线程和多种数据库连接途径,能够处理上千万条记录的大型数据库,本文介绍MySql9.1.0安装详细教程,... 目录mysql介绍:一、下载 Mysql 安装文件二、Mysql 安装教程三、环境配置1.右击此电脑