iOS给类设置属性,是否禁用第三方键盘

iOS可以给类设置属性
iOS可以设置是否禁用第三方键盘,以及针对个别页面是否禁用第三方键盘

//为类别设置属性

@property (nonatomic,assign,class) BOOL useSystemKeyBoard;
+(void)setUseSystemKeyBoard:(BOOL)useSystemKeyBoard{
    objc_setAssociatedObject(self, @selector(useSystemKeyBoard), @(useSystemKeyBoard), OBJC_ASSOCIATION_ASSIGN);
}
+(BOOL)useSystemKeyBoard{
    NSNumber *useSystemKeyBoard =objc_getAssociatedObject(self, @selector(useSystemKeyBoard));
    return [useSystemKeyBoard boolValue];
}

//是否允许使用第三方键盘

- (BOOL)application:(UIApplication *)application shouldAllowExtensionPointIdentifier:(NSString *)extensionPointIdentifier NS_AVAILABLE_IOS(8_0)
{
    if ([extensionPointIdentifier isEqualToString:@"com.apple.keyboard-service"]) {
        if (UITextField.useSystemKeyBoard) {
            return NO;
        }
    }
    return YES;
}

//设置某个键盘不允许使用第三方键盘

- (void)textFieldDidBeginEditing:(UITextField *)textField{
    if (textField == self.topTxtFld) {
        UITextField.useSystemKeyBoard = YES;
    }else{
        UITextField.useSystemKeyBoard = NO;
    }
}
- (void)textFieldDidEndEditing:(UITextField *)textField{
    UITextField.useSystemKeyBoard = NO;
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,112评论 0 4
  • 公元:2019年11月28日19时42分农历:二零一九年 十一月 初三日 戌时干支:己亥乙亥己巳甲戌当月节气:立冬...
    石放阅读 6,925评论 0 2
  • 年纪越大,人的反应就越迟钝,脑子就越不好使,计划稍有变化,就容易手忙脚乱,乱了方寸。 “玩坏了”也是如此,不但会乱...
    玩坏了阅读 2,180评论 2 1
  • 感动 我在你的眼里的样子,就是你的样子。 相互内化 没有绝对的善恶 有因必有果 当你以自己的价值观幸福感去要求其他...
    周粥粥叭阅读 1,656评论 1 5
  • 昨天考过了阿里规范,心里舒坦了好多,敲代码也犹如神助。早早完成工作回家喽
    常亚星阅读 3,055评论 0 1