首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用(空)awakeFromNib

使用(空)awakeFromNib
EN

Stack Overflow用户
提问于 2010-04-15 10:08:47
回答 1查看 1.2K关注 0票数 0

当应用程序启动时,我正在尝试运行一个操作。如果field1中没有文本,则操作checkAtStart会显示一个警告;如果field1中有文本,则会隐藏startView。如果分配给一个按钮,checkAtStart工作得很好,但当我尝试使用(void)awakeFromNib运行它时,无论显示什么,警告都会显示,并且startView永远不会隐藏。这可能是我忘记的一些非常简单的事情。如有任何帮助,我们不胜感激!

下面是我的代码:

代码语言:javascript
复制
- (void)awakeFromNib {
 [self checkAtStart:self];
}

- (IBAction)checkAtStart:(id)sender
{
 if (field1.text == nil || [field1.text isEqualToString:@""]) {
     NSString *msg = nil;

     msg = nil;

     UIAlertView *alert = [[UIAlertView alloc] 
        initWithTitle:@"Test Message" 
        message:@"Test Message"
        delegate:self 
        cancelButtonTitle:@"Close" 
        otherButtonTitles: nil];
     [alert show];
     [alert release];
     [msg release];
 }
 else
 {
     startView.hidden = YES;
 }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-04-15 10:39:19

我假设所有这些代码都在某种类型的视图控制器中。

从NIB加载后,-awakeFromNib将被发送到控制器。此时,文本字段中还没有值,除非您将这些值放入NIB文件中。

您可能使用-viewDidLoad或其他视图事件消息将模型中的一些值分配到文本字段中。这就是让你的IBAction在分配给一个按钮时工作的原因。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2642319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档