我想知道如何将UIlabel
传递给函数?
我编写了一个函数,它从表中提供了UILabel文本,但现在我想运行函数,并将UIlabel
传递给函数的头部。就像您对文本或int
所做的那样。我需要指针还是可以正常方式传递标签?
-(void)giveText:(NSString) *textinsert
{
label1.text=textinsert;
}
如何保存数组中的所有标签并运行数组?
答案 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;
}