需要帮助从选择中设置UIPicker的标签

时间:2011-06-05 20:20:58

标签: iphone objective-c uipickerview

我有一个UIPicker,上面有一个UILabel,用于更新显示当前选择。

当我第二次进入此视图时,UIPicker的选择位于我离开的最后一个单元格,但标签位于默认字符串上。我该怎么做才能让标签也出现在我最后离开的地方?

这是我正在使用的代码:

- (void)displayPicker
{
    self.numberLabel.text = @"1 number";
}
- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component 
{
    self.numberButtonText = [NSString stringWithFormat:@"%@ number", [self.pickerArray objectAtIndex:row]];
    self.numberLabel.text = self.numberButtonText;
}

1 个答案:

答案 0 :(得分:0)

如果我认为是正确的,那你正在打电话

-(void)displayPicker

设置默认的numberLabel文本值(如self.numberLabel.text = @"1 number";中所示)。

可能的原因是, 每次调用 - (void)displayPicker 时,视图会呈现给用户,但

- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component

不是。

您可能想要检查此类行为,方法是插入一些NSLog()语句,然后使用以下内容对其进行更正:

- (void)displayPicker
{
    self.numberLabel.text = [NSString stringWithFormat: @"%i number", 
                            [self.numberPicker selectedRowInComponent: 0 ]];
}