if(eventRecord.byName){
presented.text = eventRecord.byName;
float descPos = 50.0;
}else{
[presented removeFromSuperview];
float descPos = 35.0;
}
CGRect descFrame = CGRectMake(125, descPos, 185, descStringSize.height);
我甚至不确定该怎么做,因为我一直在使用objective-c一直使用对象。但是现在,我需要根据条件设置一个带浮点值的变量。我不确定语法应该是什么。
在旁注中,xcode4将最后一行作为错误,因为descPos未声明。但一旦条件运行,它不会是它吗?
答案 0 :(得分:5)
您只是在descPos
声明的范围内声明if
。要访问您在if
块内设置的值,请事先声明:
float descPos;
if(eventRecord.byName){
presented.text = eventRecord.byName;
descPos = 50.0;
} else{
[presented removeFromSuperview];
descPos = 35.0;
}
CGRect descFrame = CGRectMake(125, descPos, 185, descStringSize.height)
否则,按照你的方式,descPos
的值会在块结束时被丢弃(使用}
大括号)。