1

[キャンセル] ボタンを常に有効にするために、UISearchBar の rejectFirstResponder メソッドをオーバーライドしようとしています。

@interface UISearchBar(alwaysEnableCancelButton)
- (BOOL)resignFirstResponder;
@end

@implementation UISearchBar(alwaysEnableCancelButton)

- (BOOL)resignFirstResponder
{
    // Force the cancel button to stay enabled
    UIView *possibleButton;
    for (possibleButton in self.subviews)
    {
        if ([possibleButton isKindOfClass:[UIButton class]])
        {
            UIButton *cancelButton = (UIButton*)possibleButton;
                [cancelButton setEnabled:YES];
        }


        // Dismiss the keyboard
        if ([possibleButton isKindOfClass:[UITextField class]]) {
            [(UITextField *)possibleButton resignFirstResponder];
        }
    }
    NSLog(@"done");
    return [super resignFirstResponder];
}
@end

しかし、ログには何も表示されません!

みたいに使ってます

[mySearchBar resignFirstResponder];
4

0 に答える 0