隐藏/显示和启用/禁用按钮?

Posted

技术标签:

【中文标题】隐藏/显示和启用/禁用按钮?【英文标题】:Hide/Show & Enable/Disable a button ? 【发布时间】:2013-07-18 17:39:56 【问题描述】:

我是 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”隐藏它,但没有任何效果。

有人有想法吗?

再次感谢

【问题讨论】:

检查IBAction是否连接到IB 【参考方案1】:

NSLog() 添加到您的but_record 以查看是否实际调用了IBAction。听起来这并没有触发,因为您可能没有在 Interface Builder 中将它们链接在一起。并如上所述取出hidden=YES

【讨论】:

谢谢你,你完全正确,这是我的Interface Builder中的链接问题。我复制并粘贴了几个按钮,这个坏了......【参考方案2】:

好的,只是总结并正确关闭问题。

这对你们大多数人来说可能很明显,但是在处理接口时必须小心: 如果你创建一个按钮,将它链接到界面,给它属性......然后你复制它链接仍然存在,并可能取代新链接。

因此,为防止这种情况发生,您必须在复制按钮后但在创建新链接之前从链接选项卡中删除现有链接。 这对我有用。

希望这会有所帮助,

弗雷德

【讨论】:

以上是关于隐藏/显示和启用/禁用按钮?的主要内容,如果未能解决你的问题,请参考以下文章

根据数据值启用/禁用按钮

Eureka Forms Swift 启用和禁用按钮

SWING禁用或隐藏滚动条,但启用滚轮?

jQuery 或 PHP - 如果启用/禁用另一个 DIV,则显示/隐藏 DIV 或 LI

Javascript 隐藏/显示部分在重置时不起作用

任务栏总是显示所有图标无法折叠隐藏