
一个简单易用的 iOS Emoji 键盘
已经使用 Swift 重写,旧 Objective-C 版本在 oc 分支

特性
- Swift 编写
- 自定义 Emoji
- 多种肤色支持( 🏻 🏼 🏽 🏾 🏿 )
- 分类 Bottom Bar(类似 iOS 系统的 Emoji 键盘)
- 最近使用的 Emoji
Example
clone 项目,在项目根目录执行 pod install
命令来运行
环境
使用
安装
Swift Package Manager
通过 Swift Package Manager 安装 ISEmojiView 到你的项目,在 Package.swift 中添加:
.package(name: "ISEmojiView", url: "https://github.com/isaced/ISEmojiView.git", .upToNextMinor(from: "0.3.0")),
在 Xcode 中:
CocoaPods
# Swift
pod 'ISEmojiView'
# Objective-C (不再维护)
pod 'ISEmojiView', '0.0.1'
Carthage
github "isaced/ISEmojiView"
引入
import ISEmojiView
初始化
let keyboardSettings = KeyboardSettings(bottomType: .categories)
let emojiView = EmojiView(keyboardSettings: keyboardSettings)
emojiView.translatesAutoresizingMaskIntoConstraints = false
emojiView.delegate = self
textView.inputView = emojiView
代理
实现 <EmojiViewDelegate>
// 回调:点击某个 Emoji 表情的
func emojiViewDidSelectEmoji(_ emoji: String, emojiView: EmojiView) {
textView.insertText(emoji)
}
// 回调:点击切换键盘按钮
func emojiViewDidPressChangeKeyboardButton(_ emojiView: EmojiView) {
textView.inputView = nil
textView.keyboardType = .default
textView.reloadInputViews()
}
// 回调:点击删除按钮
func emojiViewDidPressDeleteBackwardButton(_ emojiView: EmojiView) {
textView.deleteBackward()
}
// 回调:点击隐藏按钮
func emojiViewDidPressDismissKeyboardButton(_ emojiView: EmojiView) {
textView.resignFirstResponder()
}
定制
KeyboardSettings
这个类用来描述键盘设置,可以使用如下属性:
bottomType
- 键盘底部视图,有这几个选项: .pageControl
、 .categories
,可以看看 BottomType
枚举,默认是 .pageControl
。
customEmojis
- 自定义 Emoji 列表。 需要使用到 EmojiCategory
类。
isShowPopPreview
- 长按 Emoji 弹出浮层(可供选择肤色),效果类似 iOS10 系统键盘的。默认为 true。
countOfRecentsEmojis
- 最近 Emoji 最大数量,如果设置为 0 则不开启 “最近” 功能。默认为 50。
needToShowAbcButton
- 是否展示切换键盘按钮。这个按钮在 Categories
底部视图。
其他
如果你在找一个关于 React Native 的实现,可以参考 brendan-rius/react-native-emoji-keyboard,也是基于本项目开发。
License
MIT
一个简单易用的 iOS Emoji 键盘
已经使用 Swift 重写,旧 Objective-C 版本在 oc 分支
特性
Example
clone 项目,在项目根目录执行
pod install
命令来运行环境
使用
安装
Swift Package Manager
通过 Swift Package Manager 安装 ISEmojiView 到你的项目,在 Package.swift 中添加:
在 Xcode 中:
CocoaPods
Carthage
引入
初始化
代理
实现
<EmojiViewDelegate>
定制
KeyboardSettings
这个类用来描述键盘设置,可以使用如下属性:
bottomType
- 键盘底部视图,有这几个选项:.pageControl
、.categories
,可以看看BottomType
枚举,默认是.pageControl
。customEmojis
- 自定义 Emoji 列表。 需要使用到EmojiCategory
类。isShowPopPreview
- 长按 Emoji 弹出浮层(可供选择肤色),效果类似 iOS10 系统键盘的。默认为 true。countOfRecentsEmojis
- 最近 Emoji 最大数量,如果设置为 0 则不开启 “最近” 功能。默认为 50。needToShowAbcButton
- 是否展示切换键盘按钮。这个按钮在Categories
底部视图。其他
如果你在找一个关于 React Native 的实现,可以参考 brendan-rius/react-native-emoji-keyboard,也是基于本项目开发。
License
MIT