【发布时间】:2013-07-18 02:39:21
【问题描述】:
我有一个带有UITableViewController 的情节提要。在这个控制器中,我有静态单元格,其中一个是UITableViewCell 的子类。在 IB 中,我向这个静态单元格添加了一个 UIButton,并将其连接到 UITableViewCell 子类中的一个 IBAction。但是,永远不会调用 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;
}
}
图片
【问题讨论】:
-
发布将按钮连接到代码的代码以及应该调用 IBAction 的位置
-
@CaptJak 我通过 IB 进行连接。 TouchUpInside 事件连接到我的 - (IBAction)tapButton:(id)sender 方法。
-
太棒了。请编辑您的问题并将这些方法复制粘贴到其中。你是什么意思“我通过IB做我的连接”。您是否在适当的 .h 文件中声明了属性?请发布声明属性的 .h 文件的内容以及触发 IBAction 的 .m 文件的内容。
-
@CaptJak 我希望编辑让它更清晰。
-
不错!我现在明白了!那么,您在 IBAction 处设置了一个断点并且它不会触发?还是只是在您期望的时候什么都没有发生?你可以手动触发你的动画并且你知道你的动画有效吗?
标签: ios uibutton uitableview ibaction