Skip to content
Roland Moers edited this page Oct 31, 2016 · 12 revisions

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

Version 1.1 (to be release)

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

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

To make RMActionController compatible with Swift 3 it changed like follows:

@interface RMAction<T : UIView *> : NSObject

As you can see, RMActionController has been dropped from the generic type. Now let's assume you have a subclass of RMActionController called MapActionController defined as follows:

@interface RMMapActionController : RMActionController<MKMapView *>
@end

Then your code to initialize a RMAction instance for a MapActionController should look like one of the following two examples:

RMAction *selectAction = [RMAction<RMActionController<MKMapView *> *> actionWithTitle:@"Select" style:RMActionStyleDone andHandler:^(RMActionController<MKMapView *> *controller) {
    NSLog(@"Action controller selected location: %f, %f", controller.contentView.centerCoordinate.latitude, controller.contentView.centerCoordinate.longitude);
}];

or

RMAction *selectAction = [RMAction<MapActionController *> actionWithTitle:@"Select" style:RMActionStyleDone andHandler:^(MapActionController *controller) {
    NSLog(@"Action controller selected location: %f, %f", controller.contentView.centerCoordinate.latitude, controller.contentView.centerCoordinate.longitude);
}];

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

RMAction *selectAction = [RMAction<MKMapView *> actionWithTitle:@"Select" style:RMActionStyleDone andHandler:^(RMActionController<MKMapView *> *controller) {
    NSLog(@"Action controller selected location: %f, %f", controller.contentView.centerCoordinate.latitude, controller.contentView.centerCoordinate.longitude);
}];

Version 1.0.5

No migration required

Version 1.0.4

No migration required

Version 1.0.3

No migration required

Version 1.0.2

No migration required

Version 1.0.1

No migration required

Clone this wiki locally