我尝试将name
(UILabel
)。文字更改为nameString
(NSString
)但它没有在屏幕上显示(它确实如此)更改 - 它是我调试时的值,它是正确的值)。
代码:
NSString *namesString = [self.names objectAtIndex:i];
infoWindow.storeAddressLabel.text = namesString;
注意:如果我输入:
infoWindow.storeAddressLabel.text=@"someText";
它有效
有人知道为什么吗?谢谢!
答案 0 :(得分:2)
您引用了两个不同的变量。在第一行,您定义nameString
,然后在下一行使用namesString
设置额外的s
答案 1 :(得分:1)
如果$user->coupon_votes()->get();
[
{
id: "2",
// ... <-coupon info
pivot: {
user_id: "1",
coupon_id: "2",
vote: "1"
}
},
{
id: "3",
// ... <-coupon info
pivot: {
user_id: "1",
coupon_id: "3",
vote: "0"
}
}
]
$coupon = Coupon::find(2);
$coupon->coupon_votes()->get()
[
{
id: "1",
// ... <- user info
pivot: {
coupon_id: "2",
user_id: "1",
vote: "1"
}
}
]
有效,那么infoWindow.storeAddressLabel.text=@"someText";
对象就不是了。唯一的可能是从代码storeAddressLabel
返回的字符串返回nil。请检查并验证。
感谢。
答案 2 :(得分:0)
试试看看会发生什么,
NSString *nameString=[sef.names objectAtIndex:i];
if( nameString!=nil && nameString.length >0){
NSLog(@"nameString %@",nameString);
infoWindow.storeAddressLabel.text=namesString;
}
else{
infoWindow.storeAddressLabel.text=@"nameString variable was nil so I am being set as label text";
}
答案 3 :(得分:0)
在纠正上面包含许多错误的代码时,我写了以下答案:
NSString *nameString = [sef.names objectAtIndex:i];
if(nameString)
{
infoWindow.storeAddressLabel.text = nameString;
}
else
{
infoWindow.storeAddressLabel.text = @"nameString variable was nil so I am being set as label text";
}
答案 4 :(得分:0)
尝试使用类方法分配文本属性 - (首先检查nil为stringWithString:必须传递非零NSString)
infoWindow.storeAddressLabel.text = [NSString stringWithString:(NSString*)[self.names objectAtIndex:i]];
答案 5 :(得分:0)
如果 namesString 不是nil,则应显示.. 试试这个,
printf("%c", oneChar)