附属酒吧隐藏在ios 9

时间:2015-07-09 12:09:26

标签: objective-c ios9

你可以帮助我吗

我想在ios 9中隐藏键盘上的配件栏 它的工作发现到ios 8但是在ios 9中我无法隐藏附件栏我厌倦了这段代码但它无法正常工作

for (UIView *possibleFormView in [keyboardWindow subviews]) {

    if([[possibleFormView description] hasPrefix:@"<UIInputSetContainerView"])
    {
        for(UIView *view1 in possibleFormView.subviews)
        {
            if([[view1 description] hasPrefix:@"<UIInputSetHostView"])
            {
                for (UIView *peripheralView_sub in view1.subviews) {
                    //Hides the backdrop (iOS 8)
                    if ([[peripheralView_sub description] hasPrefix:@"<UIKBInputBackdropView"] ) {
                        [[peripheralView_sub layer] setOpacity:0.0];
                    }
                    if([[peripheralView_sub description] hasPrefix:@"<<_UIRemoteKeyboardPlaceholderView"])
                    {
                        CGRect newRect= peripheralView_sub.frame;
                        newRect.origin.y=44;
                        newRect.size.height=398-44;
                        peripheralView_sub.frame=newRect;

                        peripheralView_sub.clipsToBounds=false;

                        for(UIView *remoteKeyboardView in peripheralView_sub.subviews)
                        {
                            NSLog(@"Remote Key View %@",remoteKeyboardView);
                        }
                    }
                    if ([[peripheralView_sub description] hasPrefix:@"<UIWebFormAccessory"]) {

                        for (UIView *UIInputViewContent_sub in peripheralView_sub.subviews) {

                            CGRect frame1 = UIInputViewContent_sub.frame;
                            frame1.size.height = 0;
                            peripheralView_sub.frame = frame1;
                            UIInputViewContent_sub.frame = frame1;
                            [[peripheralView_sub layer] setOpacity:0.0];
                        }

                        CGRect viewBounds = peripheralView_sub.frame;
                        viewBounds.size.height = 0;
                        peripheralView_sub.frame = viewBounds;
                        [peripheralView_sub removeFromSuperview];
                    }
                }

            }
        }
    }
}

1 个答案:

答案 0 :(得分:13)

您可以通过从活动文本字段中删除所有助手栏按钮来隐藏它。

UITextField *textField = ...
if ([textField respondsToSelector:@selector(inputAssistantItem)]) {
    UITextInputAssistantItem *inputAssistantItem = [textField inputAssistantItem];
    inputAssistantItem.leadingBarButtonGroups = @[];
    inputAssistantItem.trailingBarButtonGroups = @[];
}