2013-07-18 68 views
-1

我在iOS開發方面很新,而且在我的GUI中隱藏/顯示按鈕時遇到了一些麻煩。因爲我需要一些按鈕才能出現或消失,並被啓用或禁用。我在網絡上跟着一些很棒的教程,但無法弄清楚我的代碼出了什麼問題。隱藏/顯示並啓用/禁用按鈕?

這裏是我的ViewController.h:

/ 
// ViewController.h 
// WeddingVideoBooth 
// 
// Created by Frédéric Mouza on 15/07/13. 
// Copyright (c) 2013 Frédéric Mouza. All rights reserved. 
// 

#import <UIKit/UIKit.h> 

@interface ViewController : UIViewController{ 

    IBOutlet UIButton *but_record; 

} 

@property (nonatomic,retain) IBOutlet UIButton *but_record; 

- (IBAction)but_record:(UIButton *)sender; 

@end 

和我的.m文件:

// 
// ViewController.m 
// WeddingVideoBooth 
// 
// Created by Frédéric Mouza on 15/07/13. 
// Copyright (c) 2013 Frédéric Mouza. All rights reserved. 
// 

#import "ViewController.h" 
#import "MobileCoreServices/UTCoreTypes.h" 

@interface ViewController() 

@end 

@implementation ViewController 
@synthesize but_record; 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 
    but_record.hidden=YES; 
} 

- (void)didReceiveMemoryWarning 

{ 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
} 

- (IBAction)but_record:(UIButton *)sender { 
     but_record.enabled=NO;  
} 

@end 

這是非常簡單的,並且明白,我只是想上的按鈕禁用當你點擊在它上面......目前,點擊它時按鈕保持不變。我也嘗試使用屬性「but_record.hidden=YES」隱藏它,但沒有任何工作。

請問有人有想法嗎?

再次感謝

+0

檢查是否連接IBAction爲在IB –

回答

0

添加NSLog()到您but_record,看看是否IBAction爲實際上是獲取調用。這聽起來像是沒有觸發,因爲您可能沒有將它們連接在Interface Builder中。如上所述,拿出hidden=YES

+0

謝謝你,你是完全正確的,這是我Interface Builder中鏈接的問題。我複製並粘貼了幾個按鈕,這一個壞了... –

0

好的,只是爲了總結和正確地關閉問題。

對於大多數人來說,這可能是很明顯的,但是在處理接口之一時必須小心:如果你創建一個按鈕,將它鏈接到接口,賦予它屬性......然後你複製它Xcode保持以前鏈接,如果你通過控制+拖動你的.h文件創建一個新鏈接,則前一個鏈接保持不變,並可能取代新鏈接。

因此,要避免這種情況,您必須在複製按鈕後但在創建新鏈接之前從鏈接選項卡中刪除現有鏈接。 這對我有效。

希望這將幫助,

弗雷德你