iOS 隐藏UITextView 、UITextField 长按弹出菜单栏

iOS 17之后,长按会有一个自动填充的菜单,以及文本选中后的菜单改如何隐藏呢?可以用如下方法来隐藏。

  • 创建一个类,继承UITextView或者UITextField
  • 重新相关方法 canPerformAction:withSender:buildMenuWithBuilder

相关代码如下

swift 复制代码
//
//  CNTextView.m
//  test3
//
//  Created by xxx on 2024/8/2.
//

#import "CNTextView.h"

@implementation CNTextView

/*
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
- (void)drawRect:(CGRect)rect {
    // Drawing code
}
*/

-(void)buildMenuWithBuilder:(id<UIMenuBuilder>)builder{
    if (@available(iOS 17.0, *)) {
        //隐藏自动填充
        [builder removeMenuForIdentifier:UIMenuAutoFill];
    }
    [super buildMenuWithBuilder:builder];
}

//隐藏其他菜单按钮
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
    return NO;
}

@end
相关推荐
chinesegf26 分钟前
iOS 内购收据验证的基础实现
ios
小锋学长生活大爆炸26 分钟前
【教程】MacOS绕过Apple Develop ID获取麦克风权限
macos·swift
TheNextByte142 分钟前
如何在没有 Wi-Fi 的情况下备份 iPhone
ios·iphone
TESmart碲视1 小时前
如何设置双屏KVM切换器(Win+Mac双屏双系统共享一套键鼠):手把手详细指南
macos·计算机外设·mst·kvm切换器·tesmart·双屏kvm切换器·tesmart碲视
2501_915106321 小时前
iOS开发中CPU功耗监控的实现与工具使用
android·macos·ios·小程序·uni-app·cocoa·iphone
chinesegf1 小时前
如何在沙盒环境中进行内购测试
笔记·ios
TheNextByte11 小时前
如何使用数据线或无线方式将照片从Mac传输到 iPhone?
macos·ios·iphone
Data吴彦祖1 小时前
Mac上安装Visual Studio Code教程
c语言·macos·visual studio code
芒鸽1 小时前
macOS 上用 lycium 交叉编译 FFmpeg 适配鸿蒙(OHOS):从构建到 HNP 打包
macos·ffmpeg·harmonyos
denggun1234512 小时前
ios开发逆向安全防抓包
安全·ios