Telegram核心 Node 二次开发

TG机器人8个月前开发教程62

Telegram核心 Node 介绍:

右边的 Node 是左边 Node 的子类;

无箭头的边框:相同级别,且与最左侧 Node 继承同一个父类;

微信截图_20240515142117.jpg

1、 --- Text ---

TextNode、ImmediateTextNode 和 ASTextNode 负责文本渲染。

TextNode 利用 CoreText 渲染 NSAttributedString ;

它有一个基于 row 计算出文本布局的方法 calculateLayout ,并重写父类方法 draw 来渲染文本;

公开方法 asyncLayout 被用来异步调用布局计算并缓存计算结果,该方法是被设计来供上一级调用的,不然,它将不会呈现任何内容,因为缓存的布局为 nil ;

支持 RTL(维语,阿拉伯语等从右到左显示) 和 Accessibility(视障服务功能);

ImmediateTextNode 通过声明更多属性来控制文本布局样式使得 TextNode 更加丰富,它还支持高亮显示和点击事件。

ASTextNode 只需设置 attributedText 属性就能更新布局,虽然和 AsyncDisplayKit 里的 node 名字一样但并不是同一个。

EditableTextNode 扩展 ASEditableTextNode 用来检测 RTL 输入。

2、 --- Image ---

ASImageNode 渲染 UIImage 并使用图片的 Size 作为自己的 Size;同样,它和 AsyncDisplayKit 里的 Node 并不是同一个。

ImageNode 接收一个 Signal 来异步显示图片;仅在 AvatarNode 使用。

TransformImageNode 是异步加载图片使用最多的类;它支持在更改图片时使用 alpha 动画,并支持颜色叠加。

3、 --- Button ---

ASButtonNode 图片和标题组成 ,共有四个状态:normal、 highlighted、selected、disabled。

HighlightableButtonNode 在点击按钮时添加高亮动画。

4、 --- Status ---

ActivityIndicator 仿照UIActivityIndicatorView 样式并提供灵活的选项来自定义细节,例如颜色、直径和线宽。

5、 --- Media ---

Telegram 使用了很多组件来支持不同的媒体类型,这里仅仅简单说明;

MediaPlayNode 是 MediaPlayer 的子类,用于在 AVSampleBufferDisplayLayer 上渲染视频帧。

WebEmbedPlayerNode 通过 WKWebView 播放嵌入网页的视频;它支持来自Youtube、Vimeo、Twitch等的视频。

AnimatedStickerNode 用于播放来自 AnimatedStickerNodeSource 的动画。

6、 --- Bar ---

SearchBarNode、NavigationBar、TabBarNode 和 ToolbarNode 仿照了原生 UIKit 中对应的功能;它还消除了不同系统版本之间存在的差异性。

StatusBar 会在系统状态栏显示通话中的通知文本。

7、 --- List ---

ListView 是为可滑动列表设计的最复杂的node类之一;它利用隐藏的 UIScrollView 并借用其 pan 手势来获得滚动行为;除了管理 List 中 items (无论大小) 的可见性以外,还提供其他简便功能,如 item headers 、可自定义的 scroll indicators 、记录 item 、滚动节点 、捕捉边界 等。

GridNode 是另一个用于网格布局的滚动UI组件;它支持贴纸选择,墙纸设置等功能。

相关文章

Telegram API文档介绍 API中文介绍

我们为开发者提供了两种API,Bot API (机器人API) 允许你很轻松地用Telegram的接口创建程序,Telegram API 和DLib 允许你创建定制自己的Telegram客户端。欢迎你...

Telegram频道监控微博 自动转发微博消息

Telegram频道监控微博 自动转发微博消息

一、IFTTT和Telegram的注册自行百度,首先获取微博的RSS链接,最后面的是用户的id,微博的id寻找方式也很简单,先进入到博主的主页,之后f12,在Network一栏先清空再刷新。第一个请求...

TelegramTG电报自动发卡机器人搭建教程

TelegramTG电报自动发卡机器人搭建教程

Telegram TG电报自动发卡机器人是一种神奇的自动化工具,它可以帮助你在Telegram平台上实现各种自动化的任务。如果你也对这种有趣的机器人技术感兴趣,那么就跟随我一起,从零开始开发一个Tel...

telegram 数据采集-android 数据解析 getPathToMessage

telegram 数据采集-android 数据解析 getPathToMessage

之前基于 telethon 库开发的tg采集,原本每天采集量都很理想,后面不知道为什么突然采集量就急剧下降,达到每天8万条消息。后面修改了一下代码逻辑,以及并行采集,后面还是一样的效果,而且,还被封了...

PHP telegram电报机器人 消息回声机器人

PHP telegram电报机器人 消息回声机器人

1、申请bot,获取token,设置webhook:https://api.telegram.org/bot<token>/setwebhook?url=https://www.youdo...

telegram自动回复机器人怎么搭建

telegram自动回复机器人怎么搭建

要搭建一个Telegram自动回复机器人,您可以按照以下步骤进行操作:1.创建Telegram Bot:首先,您需要在Telegram上创建一个Bot。打开Telegram应用或使用网页版,搜索并与B...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。