gpt4 book ai didi

iphone - 如何使用 Objective-C 动态调整方法名称和调用

转载 作者:行者123 更新时间:2023-12-03 20:21:36 25 4
gpt4 key购买 nike

我正在尝试将我的代码压缩为一种方法,并且想知道如何实现以下目标:

我有一堆仅在数量上不同的变量,例如:

int intVariable1
int intVariable2
UILabel Label1
UILabel Label2
BOOL bool1
BOOL bool2

等等

所以我想调用一个方法并传入一个int。该 int 将决定对哪些 int、UILable 和 BOOL 进行处理。因此,如果在方法中传递 1,则该方法将对这些变量起作用,如下所示:

- (void) DyanamicMethod: (int) inputNumber {
//something that uses the inputNumber to act on the 1 variables

intVariable1 = someValue;
[Label1 setText:someText];
bool1 = YES;
}

显然,如果传入 2,我希望变量是 2 类型。我假设您会以某种方式创建字符串,但我不确定如何调整它以将其用作变量名。任何见解将不胜感激。感谢您抽出时间。

最佳答案

将变量声明为数组:

int intVariable[2];
UILabel *Label[2];
BOOL bools[2];

那么该方法将如下所示:

intVariable[inputNumber] = someValue;
[Label[inputNumber] setText:@"someText"];
bools[inputNumber] = YES;

请记住,数组索引是从零开始的,因此在上面的数组中,变量“1”位于索引 0 处,变量“2”位于索引 1 处。您的方法也可以只获取 inputNumber 并从中减去 1获取数组索引。

关于iphone - 如何使用 Objective-C 动态调整方法名称和调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2081465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com