更改标签文字

时间:2012-03-28 16:07:42

标签: iphone objective-c ios xcode

如何更改标签的文字?这就是我的尝试。

labelCheckBox.text = @"This is the new label";

我在“接口”构建器中为labelCheckBox连接了标签,并为其创建了一个插座。在Didload中,标签的文本已更改,但在类中的另一个方法中,它没有新值。

-(void)settext:(NSString*)newLabelText{

labelCheckBox.text = newLabelText;
 //    labelCheckBox = [[UILabel alloc] init];
//    labelCheckBox.text = @"This is the new label";

} 

我在另一个类中调用该方法,如下所示:

    [New settext:@"All Transaction"];

在NSLog中打印后,“NewLabelText”的值为:“All Transaction”。但是,当我指定“LabelCheckBox.Text = NewLabelText”时,我会打印“LabelCheckBox.Text”的值, 它给了空。

4 个答案:

答案 0 :(得分:4)

首先,如果您使用IB,则需要为UILabel创建插座和连接。它是从标签(控制+拖动)拖动到控制器类的.h文件的最简单方法。然后在.m文件中合成它,现在您可以在执行此操作时更改标签文本。

答案 1 :(得分:1)

在设置标签文字之前应加载“视图”。

答案 2 :(得分:0)

iOS开发有时会为您提供像Javascript这样的静音处理,以帮助防止您的应用崩溃。话虽如此,如果您在Interface Builder中创建了UILabel并为其设置了IBOutlet,请确保仅在创建UILabel后更改文本。 (即在-viewDidLoad之后)。您可以在-viewDidLoad的{​​{1}}处设置包含UIViewController的文本更改位置和断点,以确认正在进行的调用顺序。

答案 3 :(得分:0)

下面的代码会更改标签值为

的标签中的文字

scrollview中使用此类型更改标签

中的文字
for(UIView *views in ScrollViewMain.subviews)
{
    UILabel *label = [views viewWithTag:[sender tag]+1000];
    label.text=str1;
}

它真的有效。 谢谢