通过函数传递UILabel

时间:2013-06-13 13:07:36

标签: objective-c uilabel

我想知道如何将UIlabel传递给函数?

我编写了一个函数,它从表中提供了UILabel文本,但现在我想运行函数,并将UIlabel传递给函数的头部。就像您对文本或int所做的那样。我需要指针还是可以正常方式传递标签?

-(void)giveText:(NSString) *textinsert  
{
  label1.text=textinsert;
}

如何保存数组中的所有标签并运行数组?

3 个答案:

答案 0 :(得分:1)

老实说,看完你所说的评论后,我不相信你理解发生了什么。

-(void)giveText:(NSString) *textinsert将无法正常运行语法错误此方法应为-(void)giveText:(NSString *)textinsert,但这不是您的问题。

根据我的理解,您要求将UILabel传递给方法。

所以你想做的就是

- (void)someMethod
{
    UILabel *label1 = [[UILabel alloc] init];
    [self giveText:label1];
}

- (void)giveText:(UILabel *)label
{
    // Do what ever with label.
}

那是怎么回事?

我们创建了方法giveText:,其中UILabel作为参数,然后我们通过someMethod通过[self giveText:label1];调用此方法来传递UILabel我们创造了。

答案 1 :(得分:-1)

试试这个

 NSMutableArray *arr=[[NSMutableArray alloc]init];

//label Creation
UILabel *lbl=[[UILabel alloc]init];

//add into array
[arr addObject:lbl];


// get label From array one by one
for (UILabel *lbl in arr) {
 //pass label to function
    [self passLabel:lbl];
}

-(void)passLabel:(UILabel *)lbl

{
// do here
}

答案 2 :(得分:-2)

您可以使用与nsstring相同的方式传递标签。

我认为如果您只想更改ot的文本,则不应将标签传递给函数。 只需创建返回字符串

的函数
label.text = [self getLabelText];
- (NSString *) getLabelText {
    NSString *text = @"text";
    return text;
}