iOS讓controller具有右滑pop的效果

首先要有navigationcontroller,在navigationcontroller的viewdidload方法裏添加下面的代碼

NSObject *targetObjc = [[self.interactivePopGestureRecognizer valueForKey:@"_targets"] firstObject];
    NSObject *target = [targetObjc valueForKey:@"target"];
    UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc] initWithTarget:target action:@selector(handleNavigationTransition:)];
    [self.view addGestureRecognizer:pan];

思路是利用runtime打印出UIGestureRecognizer的屬性,找到target存放的位置,繼而找到self.interactivePopGestureRecognizer響應方法,重新創建一個平移手勢加入到view上,利用響應者鏈實現我們的右滑pop效果

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章