【发布时间】:2013-06-05 15:51:46
【问题描述】:
一时兴起,我正在为我的妹妹编写一个简单的纸牌游戏。我正在使用 UIButtons:默认状态是面朝下,选中状态是面朝上。我需要按钮有一个布尔属性,告诉我它们是否曾经被翻转过。如果不是,它被设置为真(这样我不只是在每次翻转时随机抽牌)。我尝试创建一个名为 CardGameButton 的 UIButton 类别。在.h文件中:
@interface UIButton (CardGameButton)
@property (nonatomic) BOOL discovered;
@end
.m 文件中:
@implementation UIButton (CardGameButton)
@dynamic discovered;
@end
这就是我所需要的。我如何在 IB 中使用它?我想成为 CardGameButtons 的屏幕上有一堆 UIButtons。但是当我尝试将视图控制器中对 UIButton 的调用切换到 CardGameButton 时,它告诉我 CardGameButton 不是一种类型(是的,我导入了文件)。当我尝试将情节提要中的 UIButton 类切换为 CardGameButtons 时,控制台告诉我它们是“未知类”。我尝试对 UIButton 进行子类化,但这不起作用(我只需要它们是具有额外属性的 RoundedRectButtons,并且由于您不能将 RoundedRectButton 子类化,因此它们将无法正确显示)。如何在 IB 中完成这项工作?
【问题讨论】:
-
由于类别不能有属性,我建议你只使用一个自定义按钮,并做任何你想要的绘图,或者使用一个带有轻击手势识别器的 UIImageView 作为你的“按钮” .
标签: ios objective-c uibutton interface-builder