【发布时间】:2013-05-27 10:15:07
【问题描述】:
所以我尝试了很多不同的方法,但我无法让它发挥作用。我试图在不同的类中更改 UIbutton 的状态。
class1.h
@property (strong, nonatomic) IBOutlet UIButton *monthly;
class2.m
- (void)viewDidLoad
{
ViewController *vc = [[ViewController alloc] init];
vc.monthly.enabled = NO;
}
无论我尝试什么以及将代码放在哪里,按钮状态都不会改变。当我在 class2.m 中记录状态时:
NSLog(vc.monthly.enabled ? @"Yes" : @"No");
它总是返回 No,即使我只是在我的 class2.m 中将其声明为 YES。长话短说:我的按钮属性没有从不同的类更新。如果您需要查看更多代码,请告诉我,我会尽快更新。
【问题讨论】:
-
检查 IBOutlet 的连接。你在你的代码中找到合适的 UIButton 对象了吗?
-
您没有访问您的按钮。您正在启动一个新的视图控制器并访问它的按钮。
-
@Apurv 你是什么意思..?我不认为他们的插座有什么问题,因为它在主课上工作。
-
@Desdenova 那么我将如何访问不同类的原始按钮?我也尝试使用设置为按钮状态的全局变量,但这也没有用。
-
启用按钮时,如果是通过XIB添加的,则不会实例化。设置一个标志并使用该标志从 viewDidLoad 设置按钮状态:
标签: iphone ios objective-c uibutton