ios - 在文本选择中禁用查找 - TouchScreenKeyboard IOS Unity
问题描述
我想删除在 TouchScreenKeyboard 文本字段 (IOS) 中选择文本的功能,或禁用查找文本的功能(见附图)。我在 Stackoverflow 上看到了一些关于它的答案,但我不适合 Unity。
我应该创建一个本机插件还是有更简单的方法来做到这一点?
关于类似问题的一些来源:
如何在 Swift 3 中从 textview 中删除查找和共享
如何禁用 UITextview 选择文本,复制/粘贴 UIMenuController 但仍然有超链接工作 [不重复]
谢谢!
编辑:
一个不是最佳的解决方案是在构建时编辑由 Unity 生成的 Xcode 项目:
打开Xcode项目,在Classes --> UI中添加NonLookupField.h和NonLookupField.m这两个文件
非查找字段.h
#import <UIKit/UIKit.h>
@interface NonLookupField : UITextField
@end
非查找字段.m
#import <Foundation/Foundation.h>
#import "NonLookupField.h"
@implementation NonLookupField
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
if (action == @selector(copy:) ||
action == @selector(selectAll:)) {
return true;
}
return false;
}
@end
将 UITextField 的所有实例替换为 keyboard.mm 中新创建的 NonLookupField
解决方案
推荐阅读
- java - Android 8 之后有多少静态广播接收器无法工作?
- firebase - 颤动时无法从firestore获取文件
- c - Why cant I cast a void* back to an int* and dereference it?
- python - 在 Python 中使用带有 While 循环的生成器
- python - 使用带有 tensorflow lite 编译模型的 Grad-cam
- c# - Xunit测试中“不支持的表达式”是什么意思?
- android - 我想计算所有项目的总分并显示项目详细信息
- vue.js - 列表未在 vuetify 中呈现
- amazon-web-services - 405 方法不允许 - AWS
- google-chrome - 模糊的白色边框但在底部