Я использую 3-й библиотеку партии, где он работает, когда пользователь панорамирует вид (использует UIPanGestureRecognizer
)программно создать пользовательский интерфейс Pan Жест
Однако я хочу, чтобы вызвать этот метод кнопки. Поэтому, как я могу сделать hardcode panning
в моем коде, поэтому мне не нужно редактировать 3rd party library
.
Другими словами, как я программно создаю UIPanGesture
?
Я надеюсь, что мой вопрос ясен, и кто-нибудь может мне помочь здесь.
код из 3-сторонней библиотеки:
- (void)vPannedHorizontally:(UIPanGestureRecognizer*)gesture
{
...
}
Кнопка Нажмите событие из моей ViewCOntroller
:
-(IBAction)clickedNow:(id)sender{
ThirdPartyLib *tpl =[[ThirdPartyLib alloc]init];
[tpl vPannedHorizontally: ??????]; // I need to hardcode a UIPanGesture so it works.
}
UPDATE
#import "ContentViewController.h"
#import "PaperFoldView.h"
@interface ContentViewController()
@property (nonatomic, retain) PaperFoldView *paperFoldView;
@end
@implementation ContentViewController
- (id)initWithStyle:(UITableViewStyle)style
{
self = [super initWithStyle:style];
if (self) {
UIBarButtonItem *flipButton = [[UIBarButtonItem alloc]
initWithTitle:@"Flip"
style:UIBarButtonItemStyleBordered
target:self
action:@selector(flipView:)];
self.navigationItem.leftBarButtonItem = flipButton;
}
return self;
}
-(void)flipView:(id)sender{
NSLog(@"Hi");
[self.paperFoldView setPaperFoldState:PaperFoldStateLeftUnfolded animated:YES];
}
Ну, сторонняя библиотека должна иметь обратный вызов для событий панорамирования. Вы можете попробовать вызвать 'performSelector: @selector (theirCallback :) withObject: yourGestureReco', где' yourGestureReco' является экземпляром 'UIPangGestureRecognizer', где вы задаете все параметры (состояние, перевод, ...). Разве это не вариант? – Majster
Можете ли вы показать мне подробный пример? – Illep