1

私はparentViewContoller(UINavigationItem付き)とchildViewContoller(UITableViewContoller、UISearchBar付き)を持っています。searchBar が非表示になっているクリックで UIBarButtonItem を作成したい。

TableViewContoller.h(childViewContoller)

@interface TableViewController : UITableViewController<UISearchBarDelegate, UISearchDisplayDelegate, UINavigationControllerDelegate> 
@property (nonatomic, strong) IBOutlet UISearchBar *searchBar;
@end

TableViewContoller.m(childViewContoller)
@synthesize searchBar;

- (void)viewDidLoad 
{
    [super viewDidLoad];
    self.searchBar.hidden = NO;
    [self createSearchButton];
}
- (void) createSearchButton {
    UIBarButtonItem *myButton = [[UIBarButtonItem alloc] initWithTitle:@"myButton" style:UIBarButtonItemStyleBordered target:self action:@selector(iButton:)];
    self.parentViewController.navigationItem.rightBarButtonItem = myButton;
}

-(void) iButton {
    self.searchBar.hidden = YES;
    NSLog(@"Click on iButton");
}

しかし、myButton をクリックすると、NSLog が表示され、searchBar は非表示になりません。コードが機能しないのはなぜですか?

4

0 に答える 0