我正在编写一个应用程序,当我们单击文本字段时,它会生成一个pickerview。pickerview 有两个组件
现在我的问题是我想获得两个组件的标题,这些组件在我的文本字段中突出显示,用逗号(,)分隔
提前致谢。
我正在编写一个应用程序,当我们单击文本字段时,它会生成一个pickerview。pickerview 有两个组件
现在我的问题是我想获得两个组件的标题,这些组件在我的文本字段中突出显示,用逗号(,)分隔
提前致谢。
假设您有一个UIPickerView
名为 pickerView 的对象。当用户完成他的操作并点击完成按钮时,您应该将选定的值设为
int offset1 = [pickerView selectedRowInComponent:0];
int offset2 = [pickerView selectedRowInComponent:1];
NSString *str = [NSString stringWithFormat:@"%@,%@",[arrOne objectAtIndex:offset1],[arrTwo objectAtIndex:offset2]];
其中 arrOne 和 arrTwo 是用于填充选取器视图的数组。
如果您设置了 pickerview 代表,则将此代码段写在
- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
for(NSUInteger k = 0; k < <number of components>s; ++k++)
{
NSUInteger selectedRow = [<Your pickerview name> selectedRowInComponent:k];
NSString *title = [[<Your pickerview name> delegate] pickerView:<Your pickerview name> titleForRow:selectedRow inComponent:i];
[<Your temporary string> appendFormat:@"Selected item \"%@\" in component %lu\n", title, i];
}
}
如果您添加UIPickerViewDataSource,UIPickerViewDelegate
委托,那么在委托方法中您可以直接分配此值,如下所示...
- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
yourTextField.text = [NSString stringWithFormat:@"%@,%@",[arr1 objectAtIndex:row],[arr2 objectAtIndex:row]];
}
希望这可以帮助你...