Objective c 在ViewPicker中选择Row
在viewDidLoad中,我有以下代码: //这里始终显示正确的字符串A基本值1、2、3、4 NSLog(@“资本%@”,自资本) 但Select PickerView未显示正确的selectRow。 如果我删除了所有代码并在viewDidLoad中插入 [self.Select选择行:2不完整:0动画:否] 显示正确的三行(一和二值相同)。Objective c 在ViewPicker中选择Row,objective-c,ios,Objective C,Ios,在viewDidLoad中,我有以下代码: //这里始终显示正确的字符串A基本值1、2、3、4 NSLog(@“资本%@”,自资本) 但Select PickerView未显示正确的selectRow。 如果我删除了所有代码并在viewDidLoad中插入 [self.Select选择行:2不完整:0动画:否] 显示正确的三行(一和二值相同)。 而是使用selectRow:3显示的不是四个而是一个 您实际上是在分配一个值,而不是进行比较。您应键入: if (self.aCapital == @"
而是使用selectRow:3显示的不是四个而是一个 您实际上是在分配一个值,而不是进行比较。您应键入:
if (self.aCapital == @"One") {
[self.Select selectRow:0 inComponent:0 animated:NO];
NSLog(@"One");
return;
}
这一行使问题
if(self.aCapital=@“One”)
在if
语句中赋值。此表达式始终计算true
您需要使用
if (self.aCapital == @"One")
或
谢谢两位。现在值传递正常,但“选择取景器”继续不显示正确的行,为什么?是的,当然。我应该添加另一个[self.Select selectRow:(在这里传递正确的行?)不完整:0动画:否];在if条件的末尾(不要这样认为)。不,不需要这样做,我认为您的代码存在一些问题,什么是
aCapital
,什么是Select
?aCapital是一个NSString变量。Select是ViewPicker。我认为在viewDidLoad
中,如果(!self.aCapital)
此条件的计算结果为true。因此,进一步选择它将不起作用,因为您在else部分上写了它。现在,值传递正常,但“选择视图选择器”继续不显示正确的行,为什么?
if (self.aCapital == @"One")
if ([self.aCapital isEqualToString: @"One"])