news 2026/6/10 15:32:17

iOS开发 简单的自定义emoji表情键盘封装

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
iOS开发 简单的自定义emoji表情键盘封装

1:其实很简单,就是利用瀑布流是想的一个keyboardview,当呼出键盘时替换为自定义的表情键盘。

OK,别的不说了,先来代码吧! 可以直接复制使用噢~当然里面有例如 SCREEN_WIDTH,是对屏幕大小的define 和 类似_DeleteBtn.lx_right的使用,这是对view的扩展。文章所包含的代码等,如果需要请到我的资源下载这篇文章的资源哦。代码就是这篇文章的代码。链接:https://download.csdn.net/download/lijianfei111/92456072?spm=1001.2014.3001.5503

一:首先是自定一键盘的 .h 文件

#import <UIKit/UIKit.h> NS_ASSUME_NONNULL_BEGIN @interface stickerKeyboardView : UIView<UICollectionViewDelegateFlowLayout,UICollectionViewDataSource> @property (nonatomic,strong) UICollectionView * StickerKB_CollecView; @property (nonatomic,assign) CGRect Or_frame; @property (nonatomic,strong) NSMutableArray * emojjArr; @property (nonatomic,strong) UIButton * DeleteBtn; @property (nonatomic,strong) UIButton * SendBtn; @property (nonatomic,strong) UIView * btnbackView; @property (nonatomic,copy) void(^PickemojjBlock)(NSString * emojjstr); @property (nonatomic,copy) void(^emoDeleteBlock)(void); @property (nonatomic,copy) void(^sendEmojjBlock)(void); @end

二:然后是 .m 文件中的代码,这里面内置了表情数组,如果你有其他的emoji表情,可进行增加或替换。

#import "stickerKeyboardView.h" @implementation stickerKeyboardView -(instancetype)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if (self) { self.backgroundColor = [UIColor whiteColor]; self.emojjArr = [[NSMutableArray alloc]init]; self.Or_frame = frame; [self presetUI]; NSArray * emolis = @[ @{ @"char": @"😍" }, @{ @"char": @"😁" }, @{ @"char": @"😘" }, @{ @"char": @"🍎" }, @{ @"char": @"🍏" }, @{ @"char": @"🍊" }, @{ @"char": @"🍋" }, @{ @"char": @"😖" }, @{ @"char": @"😉" }, @{ @"char": @"😏" }, @{ @"char": @"🍒" }, @{ @"char": @"🍇" }, @{ @"char": @"🍉" }, @{ @"char": @"🍓" }, @{ @"char": @"🍑" }, @{ @"char": @"🍈" }, @{ @"char": @"🍌" }, @{ @"char": @"🍐" }, @{ @"char": @"🍍" }, @{ @"char": @"🍆" }, @{ @"char": @"🍅" }, @{ @"char": @"🍠" }, @{ @"char": @"🌽" }, @{ @"char": @"😳" }, @{ @"char": @"😡" }, @{ @"char": @"😓" }, @{ @"char": @"😭" }, @{ @"char": @"😱" }, @{ @"char": @"😜" }, @{ @"char": @"😰" }, @{ @"char": @"😢" }, @{ @"char": @"😚" }, @{ @"char": @"😄" }, @{ @"char": @"😀" }, @{ @"char": @"😪" }, @{ @"char": @"😣" }, @{ @"char": @"😔" }, @{ @"char": @"😠" }, @{ @"char": @"😌" }, @{ @"char": @"😝" }, @{ @"char": @"😂" }, @{ @"char": @"😥" }, @{ @"char": @"😞" }, @{ @"char": @"😒" },
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 15:16:47

Nuklear命令式UI替代方案:从传统框架到轻量级实战指南

Nuklear命令式UI替代方案&#xff1a;从传统框架到轻量级实战指南 【免费下载链接】Nuklear A single-header ANSI C immediate mode cross-platform GUI library 项目地址: https://gitcode.com/gh_mirrors/nuk/Nuklear 你是否曾为传统UI框架的复杂性而头疼&#xff1f…

作者头像 李华
网站建设 2026/6/6 15:35:21

21、深入探索Net - SNMP:配置、开发与应用

深入探索Net - SNMP:配置、开发与应用 1. Net - SNMP配置 在客户端安装Net - SNMP以进行监控时,建议使用主机资源MIB编译Net - SNMP。操作步骤如下: ./configure -with-mib-modules=host运行 configure 时,它会尝试运行自动配置脚本,若不想使用,可自行创建自定义配…

作者头像 李华
网站建设 2026/6/6 18:41:43

24、操作系统管理与云计算技术中的 Python 应用

操作系统管理与云计算技术中的 Python 应用 1. OS X 系统管理 在 OS X 系统中,我们可以使用 Python 进行一系列系统管理操作。首先,获取系统中应用程序的进程名,代码如下: processnames = sysevents.application_processes.name.get() processnames.sort(lambda x, y: c…

作者头像 李华
网站建设 2026/6/10 12:46:21

Delta模拟器金手指功能如何彻底改变你的复古游戏体验?

Delta模拟器金手指功能如何彻底改变你的复古游戏体验&#xff1f; 【免费下载链接】Delta Delta is an all-in-one classic video game emulator for non-jailbroken iOS devices. 项目地址: https://gitcode.com/GitHub_Trending/delt/Delta 在当今移动游戏时代&#x…

作者头像 李华
网站建设 2026/6/10 2:10:17

终极iOS应用签名绕过神器:AppSync Unified完整教程

终极iOS应用签名绕过神器&#xff1a;AppSync Unified完整教程 【免费下载链接】AppSync Unified AppSync dynamic library for iOS 5 and above. 项目地址: https://gitcode.com/gh_mirrors/ap/AppSync AppSync Unified是一款专为越狱iOS设备设计的动态库工具&#xff…

作者头像 李华
网站建设 2026/6/10 13:04:41

如何在Windows系统上安装和使用FIO磁盘性能测试工具

存储性能是影响计算机整体运行效率的关键因素之一。无论是日常办公还是专业应用&#xff0c;磁盘的读写速度都直接决定了系统的响应能力。FIO作为一款专业的磁盘性能测试工具&#xff0c;能够帮助您全面评估存储设备的性能表现。 【免费下载链接】FIO工具最新版Windows版本下载…

作者头像 李华