English | 中文
一个易于使用的 iOS Emoji 键盘。
已使用 Swift 重写,旧的 Objective-C 版本在 oc 分支上。
要运行示例项目,请克隆 repo,并首先从 Example 目录运行 pod install
。
通过 Swift Package Manager 安装到你的项目中,在 Package.swift 中添加:
.package(name: "ISEmojiView", url: "https://github.com/isaced/ISEmojiView.git", .upToNextMinor(from: "0.3.0")),
在 Xcode 中:
# Swift
pod 'ISEmojiView'
# Objective-C (Deprecated)
pod 'ISEmojiView', '0.0.1'
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>
// callback when tap a emoji on keyboard
func emojiViewDidSelectEmoji(_ emoji: String, emojiView: EmojiView) {
textView.insertText(emoji)
}
// callback when tap change keyboard button on keyboard
func emojiViewDidPressChangeKeyboardButton(_ emojiView: EmojiView) {
textView.inputView = nil
textView.keyboardType = .default
textView.reloadInputViews()
}
// callback when tap delete button on keyboard
func emojiViewDidPressDeleteBackwardButton(_ emojiView: EmojiView) {
textView.deleteBackward()
}
// callback when tap dismiss button on keyboard
func emojiViewDidPressDismissKeyboardButton(_ emojiView: EmojiView) {
textView.resignFirstResponder()
}
这是一个描述键盘设置的类。可用属性
bottomType
- 底部视图的类型。可用变体:.pageControl
, .categories
。参见 BottomType
枚举。默认为 .pageControl
。customEmojis
- 自定义表情符号的数组。要描述表情符号,您必须使用 EmojiCategory
类。isShowPopPreview
- 长按以弹出预览效果,就像 iOS10 系统表情符号键盘一样。默认为 true。countOfRecentsEmojis
- 最近使用的表情符号的最大数量,如果设置为 0,则不会显示任何内容。默认为 50。needToShowAbcButton
- 是否需要显示切换键盘按钮。此按钮位于 Categories
底部视图中。在 macOS SwiftUI 上无法原生运行。
import ISEmojiView
EmojiView_SwiftUI()
.frame(width: 300, height: 500)
.padding()
countOfRecentsEmojis
, needToShowAbcButton
, needToShowDeleteButton
, updateRecentEmojiImmediately
可以作为参数传递给 EmojiView_SwiftUI。
如果您正在寻找 React Native 解决方案,请查看这个 brendan-rius/react-native-emoji-keyboard
MIT