3

我正在尝试将变量标签添加到一个简单的基于窗口的 iPhone 应用程序。我正在使用 XCode 3.2.6。该应用程序是我从网上下载的一个示例,就像这样简单:

  • 用户可以在其中键入一些文本的标签
  • 提交按钮

当用户单击提交时,标签中的文本通过简单的查询记录在 mysql 数据库中(数据库在我的本地机器上并使用 php 脚本处理)。查询有效,我只想添加标签来编写查询结果。所以我添加了这段代码:

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320.0f, 20.0f)];
[label setText:@"write some text"];

但它不起作用。我需要将标签连接到 Interface Builder 中的某个对象吗?非常感谢

4

4 回答 4

1

我认为您忘记像这样在视图中添加标签:

[self.view addSubView: label];

这将在您当前的视图中插入您的标签

于 2013-02-26T10:04:53.923 回答
0

解决了!我错过了@synthesize 标签!

于 2013-02-26T11:54:50.493 回答
0

您最好将 UILabel *label 作为 AppDelegate 的属性。

然后在 AppDelegate.m 中,你可以初始化 UILabel

_label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320.0f, 20.0f)];

在您的Launch代码末尾,您应该_label_label

[self.window addSubView:_label]

在 AppDelegate 中,您应该公开一个设置文本的方法。

- (void)showText:(NSString *)text
{
    [_label setText:text];
    [self.window bringSubviewToFront:_label];
}

并且在您的视图或 viewControll(should improt your AppDelegate.h) 中,当您单击提交按钮时

- (void)clickSubmitButton:(UIButton)button
{
        // TODO : get your text string
        AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
        [appDelegate showText:YOURTEXT];
}
于 2013-02-26T09:59:29.337 回答
0

UITextField听起来更好的解决方案...这样,您可以编辑消息并以编程方式设置文本。
文档:http: //developer.apple.com/library/ios/#documentation/uikit/reference/UITextField_Class/Reference/UITextField.html

于 2013-02-26T09:42:47.007 回答