skywinder/ActionSheetPicker-3.0 — pull request #108 by venj (2014-12-09 13:40:18+00:00)
Title: Fixed an issue when more than one ActionSheetCustomPicker is used in a ViewController

### How the issue happened

Since user should implement `UIPickerView` `datasource` methods in their own view controller for `ActionSheetCustomPicker`, when there's only one `ActionSheetCustomPicker` instance, there will be no problem. But in some rare cases, there are two or more `ActionSheetCustomPicker` instances (or mixed use with pure `UIPickerView`), the problem will appear.

In Data Source like this:

```objc
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
if (pickerView == self.customPickerOne.pickerView) {
// code...
return XXX;
}
if (pickerView == self.customPickerTwo.pickerView) {
// code...
return YYY;
}
if (pickerView == self.customPickerThree.pickerView) {
// code...
return ZZZ;
}
...
}
// Similar for other datasource methods.
...
```

When datasource methods are called, `self.customPickerOne.pickerView` is still `nil`. So, if there's only one picker, we don't have to differenciate between pickerviews, datasources provides data happily. But with multiple picker, if `self.customPickerOne.pickerView` is `nil`, we have no other ways to provide correct data to pickers seperately.

### Solution

Since we know the cause, the solution is easy. Just assign the pickerview to `self.pickerView` immediately after its creation in `- configuredPickerView` for `ActionSheetCustomPicker`, so when datasource is called, the pickerView reference won't be `nil`. Problem solved.