Objective c IBOutlet变量名有问题
我在转换字符串以交换代码中的Objective c IBOutlet变量名有问题,objective-c,ios,variables,uilabel,iboutlet,Objective C,Ios,Variables,Uilabel,Iboutlet,我在转换字符串以交换代码中的IBOutlet变量名时遇到问题 我试图通过稍后以编程方式创建相同的变量名来引用头文件中声明的ibuilabel的实例 但是,当我强制转换字符串以尝试替换ibuilabel变量名时,程序崩溃 希望下面的例子能够解释发生了什么&为什么需要。抱歉,如果描述有点不确定-我是初学者 当我创建UILabel*tempLabelName尝试替换头文件中声明的IBOutlet UILabel*属性(在下面的propertyUseForNaming示例中引用)时,程序崩溃 for (
IBOutlet
变量名时遇到问题
我试图通过稍后以编程方式创建相同的变量名来引用头文件中声明的ibuilabel
的实例
但是,当我强制转换字符串以尝试替换ibuilabel
变量名时,程序崩溃
希望下面的例子能够解释发生了什么&为什么需要。抱歉,如果描述有点不确定-我是初学者
当我创建UILabel*tempLabelName
尝试替换头文件中声明的IBOutlet UILabel*属性
(在下面的propertyUseForNaming
示例中引用)时,程序崩溃
for (int i = 0; int < 5; i++)
{
NSString *tempText = [[NSString alloc] initWithFormat:@"%d", [aReferenceObject[i] integerToDisplayAsText]];
UILabel *tempLabelName = [NSString stringWithFormat:@"%@", [aReferenceObject[i] propertyUseForNaming]];
[tempLabelName setText: tempText];
}
for(int i=0;int<5;i++)
{
NSString*TENTEXT=[[NSString alloc]initWithFormat:@“%d”,[AREFERCEOBJECT[i]INTEGERTODISPLAYSTEXT]];
UILabel*tempLabelName=[NSString stringWithFormat:@“%@,[AreReferenceObject[i]propertyUseForNaming]];
[tempLabelName setText:TestText];
}
有人能帮我解释一下我怎么做/提供进一步的建议吗
非常感谢。UILabel不是字符串,反之亦然
UILabel *tempLabelName = [NSString stringWithFormat:@"%@", [aReferenceObject[i] propertyUseForNaming]];
表示您正在创建字符串,然后尝试将其视为UILabel。这是不可能的。您需要让XIB(或您的程序)创建UILabel,然后可以使用text属性设置文本:
在头文件中:
@property (nonatomic, retain) UILabel *label;
在代码中:
label.text = [NSString string...];
// OR
[label setText:str];
还有很多(例如,您还需要.m文件中的代码来实现属性,还需要将xib实例连接到outlet),但这是您误解的本质 您必须更具体地说明调试程序时会出现什么错误。这是编译时的错误吗?运行时错误?在任何情况下,它说什么?铸造不是魔术,它只是为了愚弄编译器。在开发iOS应用程序之前一定要学习C。