将交互式标签添加到基于窗口的iPhone应用程序

时间:2013-02-26 09:33:18

标签: objective-c xcode

我正在尝试将一个变量标签添加到一个简单的基于窗口的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 个答案:

答案 0 :(得分:1)

我认为您忘记在视图中添加标签,如下所示:

[self.view addSubView: label];

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

答案 1 :(得分:0)

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

答案 2 :(得分:0)

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

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

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

在启动代码的最后,您应该将_label添加到窗口,将_label添加到前面

[self.window addSubView:_label]

并且在AppDelegate中你应该公开一个方法来设置文本。

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

在您的视图或viewControll中(应该侵犯您的AppDelegate.h),当您单击提交按钮时

- (void)clickSubmitButton:(UIButton)button
{
        // TODO : get your text string
        AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
        [appDelegate showText:YOURTEXT];
}

答案 3 :(得分:0)

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