Skip to content
Roland Moers edited this page Sep 9, 2017 · 6 revisions

This page will describe how to migrate from your current version of RMPickerViewController to the latest version of RMPickerViewController.

Version 2.3.0

No migration required

Version 2.2.1

No migration required

Version 2.2.0

No migration required

Version 2.1.0

The definition of RMAction changed a little bit. Previously it looked like follows:

@interface RMAction<T : RMActionController<UIView *> *> : NSObject

To make RMPickerViewController compatible with Swift 3 it changed to this definition:

@interface RMAction<T : UIView *> : NSObject

As you can see, RMActionController has been dropped from the generic type. Your code to initialize a RMAction instance for your RMPickerViewController should look like one of the following two examples:

RMAction *selectAction = [RMAction<RMActionController<UIPickerView *> *> actionWithTitle:@"Select" style:RMActionStyleDone andHandler:^(RMActionController<UIPickerView *> *controller) {
    ...
}];

or

RMAction *selectAction = [RMAction<RMPickerViewController *> actionWithTitle:@"Select" style:RMActionStyleDone andHandler:^(RMPickerViewController *controller) {
    ...
}];

As RMPickerViewController version 2.1.0 dropped RMActionController from the generic of RMAction, you need to drop that reference, too. So your new code should look like follows:

RMAction *selectAction = [RMAction<UIPickerView *> actionWithTitle:@"Select" style:RMActionStyleDone andHandler:^(RMActionController<UIPickerView *> *controller) {
    ...
}];

Version 2.0.3

No migration required

Version 2.0.2

No migration required

Version 2.0.1

No migration required

Versions prior to version 2.0

These versions are quite old and there shouldn't be anyone still using this version. So I'll skip the migration info here. If you need the migration info, drop me a mail.

Clone this wiki locally