これがカテゴリの .h であることがわからないというエラーを引き起こしている UIView カテゴリがあります。
#import <UIKit/UIKit.h>
typedef NS_ENUM(NSUInteger, BCRectEdge) {
BCRectEdgeTop = 0,
BCRectEdgeLeft = 1,
BCRectEdgeBottom = 2,
BCRectEdgeRight = 3
};
@interface UIView (Genie)
/*
* After the animation has completed the view's transform will be changed to match the destination's rect, i.e.
* view's transform (and thus the frame) will change, however the bounds and center will *not* change.
*/
- (void)genieInTransitionWithDuration:(NSTimeInterval)duration
destinationRect:(CGRect)destRect
destinationEdge:(BCRectEdge)destEdge
completion:(void (^)())completion;
/*
* After the animation has completed the view's transform will be changed to CGAffineTransformIdentity.
*/
- (void)genieOutTransitionWithDuration:(NSTimeInterval)duration
startRect:(CGRect)startRect
startEdge:(BCRectEdge)startEdge
completion:(void (^)())completion;
@end
そして、それをView Controllerにインポートします。新しい UIView を作成し、それらのメソッドのいずれかを使用します。入力を開始すると、このメソッドが提案され、定義すると適切な場所に移動します。しかし、実行すると、次のように表示されます。
'-[UIView genieInTransitionWithDuration:destinationRect:destinationEdge:completion:]: unrecognized selector sent to instance 0x1552c220'
何かご意見は?私を夢中にさせます。