2010-11-20 100 views
0

我有三个按钮位于我的视图中,名为btn_easy,btn_medium,btn_hard。我想隐藏所有这三个按钮,当我点击其中的一个:我的.h文件中定义了网点和方法如下:objective-c隐藏圆形按钮

IBOutlet UIButton *btn_easy; 
    IBOutlet UIButton *btn_medium; 
    IBOutlet UIButton *btn_hard; 
    @property(nonatomic,retain) IBOutlet UIButton *btn_easy; 
    @property(nonatomic,retain) IBOutlet UIButton *btn_medium; 
    @property(nonatomic,retain) IBOutlet UIButton *btn_hard; 

    -(IBAction)buttonPressed:(id)sender; 

在我.h文件中定义这些IBOutlets后,我打开界面生成器和将每个按钮的连接出口从“触摸内部”引用出口转到“文件所有者”。我.m文件有以下合成:

@synthesize btn_easy,btn_medium,btn_hard; 

我累了,在我的.m文件下面的方法,以及:

-(IBAction)buttonPressed:(id)sender{ 
    UIButton *button = (UIButton*)sender; 
    if([button.titleLabel.text isEqualToString:@"easy"]){ 
     NSLog(@"easy clicked"); 
    } 
    if([button.titleLabel.text isEqualToString:@"medium"]){ 
     NSLog(@"medium clicked"); 
    } 
    if([button.titleLabel.text isEqualToString:@"hard"]){ 
     NSLog(@"hard clicked"); 
    } 
    cover_page.hidden = YES; 
    btn_easy.hidden = YES; 
    btn_medium.hidden = YES; 
    btn_hard.hidden = YES; 
    loadingCover.hidden = YES; 
} 

但是这些都似乎隐藏按钮正常工作。我知道该方法执行正确,但是因为我有正确执行的方法内的其他功能,它只是隐藏按钮不起作用。

请告诉我,我做错了什么......

+0

无关和Xcode,所以我重新标记这一点。 – 2010-11-20 18:24:36

+1

您确定您已通过IB为每个按钮正确连接了插座,并且buttonPressed操作真的被调用了吗? – cbranch 2010-11-20 18:51:41

+0

我在OP中添加了更多解释 – sadmicrowave 2010-11-20 20:23:58

回答

2

你要确保每个按钮被声明为IBOutlets,

然后确保界面生成器里面,您的IBAction为连接到每个按钮和您的IBOutlets连接到每个相应的按钮。

而不是使用隐藏的尝试阿尔法/阻被设置为0。

应该是一个很简单的解决,如果这个不那么我想工作,有一些其他的代码与那些正在停止按钮接口从这个事件发生。

+0

为什么建议更改'alpha'属性而不是'hidden'属性? – Rits 2010-11-20 19:50:32

+0

嗯,我不相信他们之间有任何区别,但它只是一个想法,因为这个问题似乎没有很多可能的解决方案,因为它的简单性我试图把每一种可能性看成是无论多么可能。换句话说,只是为了获得功能而尝试的那些东西之一。你永远不会知道。 – 2010-11-20 19:55:36

+0

我已经更新了我的OP,以显示我尝试过的其他事情,并详细阐述了如何创建我的连接插座。请告知... – sadmicrowave 2010-11-20 20:24:29

0

使用这个!

if([[YourButton titleForState:UIControlStateNormal] isEqualToString:@"Text"]) 
{ 

} 
else { 

}