didSelectRow中的UIPickerView出现问题



嗨,我的UIPickerView 中有4个组件

当我在UIPickerView中呼叫didSelectRow时。

当我滚动selectedRowInComponent:1

我正在显示NSLog(@"hours");

当我滚动selectedRowInComponent:0

我正在显示NSLog(@"date");

当我滚动selectedRowInComponent:1

它仍然显示我的日期。。。不是几个小时。

@有人帮我解决吗

提前谢谢。

- (void)pickerView:(UIPickerView *)thePickerView
      didSelectRow:(NSInteger)row
       inComponent:(NSInteger)component
{
    //get the values
    NSInteger date_NewRow = [thePickerView selectedRowInComponent:0];
    NSInteger hour_NewRow = [thePickerView selectedRowInComponent:1];
    NSInteger minute_NewRow = [thePickerView selectedRowInComponent:2];
    NSInteger am_pm_NewRow = [thePickerView selectedRowInComponent:3];
    if (date_NewRow) {
        NSLog(@"date");
    }
    else if (hour_NewRow) {
        NSLog(@"hours");
    }

    //some code to save the values 
}

IMHO您可能检查了错误的值。如果你想知道哪个组件发生了变化,请检查组件变量:

if      (component==0) NSLog(@"date");
else if (component==1) NSLog(@"hour");
else if (component==2) NSLog(@"minute");
else if (component==3) NSLog(@"am-pm");

最佳,Sascha

最新更新