2

のストーリーボードがありUITableViewControllerます。このコントローラーには、静的セルがあり、そのうちの 1 つは のサブクラスですUITableViewCell。IB で、UIButtonこの静的セルにa を追加IBActionし、UITableViewCellサブクラスの an に接続しました。ただし、IBActionが呼び出されることはありません。なぜこれが機能しないのですか?セル内のボタンが IB を介してイベントをトリガーする目的の動作を実現するにはどうすればよいですか?

.h

#import <UIKit/UIKit.h>

@interface BSWorkoutsCell : UITableViewCell

@property (nonatomic, weak) IBOutlet UIButton *button;
@property (nonatomic, strong) IBOutletCollection(UIButton) NSArray *buttons;

- (IBAction)tapButton:(id)sender;
@end

.m

- (IBAction)tapButton:(id)sender{
    if (!_buttonsHidden){
        [self animateHideButtons:(UIButton *)sender];
        _buttonsHidden = YES;
    }
}

画像

ここに画像の説明を入力

ここに画像の説明を入力

4

1 に答える 1

2

User Interaction EnabledUITableViewCell がIB でチェックされていないことに気付きました。これにより、その中のサブビューはインタラクティブではなくなり、ボタンは実際には押されIBActionず、呼び出されませんでした。

チェックボックスをオンにすると、すべてが正常に機能しました。

于 2013-07-18T04:05:54.623 に答える