我是iOS新手。我正在使用EAActionSheetPicker(https://github.com/EckyZero/EAActionSheetPickerDemo)。
我这样启动我的选择器:
- (void)initLocationPicker
{
NSMutableArray* names = [[NSMutableArray alloc] initWithCapacity:_data.count];
for(Model *item in _data)
[names addObject:item.name];
self.locationPicker = [[EAActionSheetPicker alloc]initWithOptions:names];
self.locationPicker.delegate = self;
}
我想要实现的是当我按下完成按钮时;我想知道在选择器中选择了哪个索引。我通过实现委托方法获得实际标签:
-(void)EAActionSheetPicker:(EAActionSheetPicker *)actionSheet
didDismissWithSelection:(id)selection
inTextField:(UITextField *)textField{
NSLog(@"selected: %@", selection);
}
我怎么知道是哪个索引?
可能很明显。
由于
编辑:
也许最好的解决方案是使用我的实际数据阵列启动EAActionSheetPicker。不知道是否值得这么麻烦。
答案 0 :(得分:0)
在 EAActionSheetPicker.m 中
在这种方法中
- (void)hide:(UISegmentedControl *)sender
放
<强> self.textField.tag =行; 强>
此行NSInteger row = [self.picker selectedRowInComponent:0];
现在在你的委托方法中
-(void)EAActionSheetPicker:(EAActionSheetPicker *)actionSheet
didDismissWithSelection:(id)selection
inTextField:(UITextField *)textField{
NSLog(@"index: %@", textField.tag);
yourLabel.text=[names objectAtIndex:textField.tag];
}
// UITextField Delegate
-(void)textFieldDidBeginEditing:(UITextField *)textField{
self.picker.textField = textField;
[self.picker showInView:self.view];
}