gpt4 book ai didi

iphone - 为每个组件获取 UIPickerView 中的选定行

转载 作者:太空狗 更新时间:2023-10-30 03:12:39 26 4
gpt4 key购买 nike

我有一个 UIPickerView,其中 3 个组件填充了 2 个 NSMutableArrays(2 个组件具有相同的数组)。

一个教程说:

//PickerViewController.m
- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {

NSLog(@"Selected Color: %@. Index of selected color: %i", [arrayColors objectAtIndex:row], row);
}

但我想在 UIAlertView 用户触摸 UIButton 后显示每个组件的选定行。

有没有办法做到这一点?或者我必须只使用 3 个不可见的 UILabels 作为缓冲区吗?

提前致谢。

最佳答案

因此,在您的按钮操作方法中,您可以执行如下操作:

- (IBAction) showAlert {
NSUInteger numComponents = [[myPickerView datasource] numberOfComponentsInPickerView:myPickerView];

NSMutableString * text = [NSMutableString string];
for(NSUInteger i = 0; i < numComponents; ++i) {
NSUInteger selectedRow = [myPickerView selectedRowInComponent:i];
NSString * title = [[myPickerView delegate] pickerView:myPickerView titleForRow:selectedRow forComponent:i];
[text appendFormat:@"Selected item \"%@\" in component %lu\n", title, i];
}

NSLog(@"%@", text);
}

这将是检索信息的绝对正式方式(通过使用适当的数据源和委托(delegate)方法),但它可能更容易(取决于您的设置),只获取选定的行然后从中提取信息直接使用您的模型,而不是通过委托(delegate)方法。

关于iphone - 为每个组件获取 UIPickerView 中的选定行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1389771/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com