解决自定义leftBarButtonItem返回手势失效的方法

考虑到interactivePopGestureRecognizer也有delegate属性,替换默认的self.navigationController.interactivePopGestureRecognizer.delegate来配置右滑返回的表现也是可行的。在主ViewController中:

- (void)viewDidLoad {  [super viewDidLoad];  self.navigationController.interactivePopGestureRecognizer.delegate = self;// 重新指定代理}
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
    if (self.navigationController.viewControllers.count == 1) { // 关闭主界面的右滑返回
        return NO;
    } else {
        return YES;
    }
}
时间: 2024-08-07 08:27:40

解决自定义leftBarButtonItem返回手势失效的方法的相关文章

Flex4 DataGrid实现可复制单元格,同时解决自定义GridItemRenderer出现1009错误的方法

原创内容,如需转载,请注明出处,谢谢 最近在项目中发现Flex的DataGrid不支持内容复制,在涉及到保护敏感数据时倒是很有用处,但大部分情况下,我们还是希望客户能够直接复制DataGrid单元格中的内容进行快速操作,这个与用户体验背道而驰的问题一定要解决,因此想到直接自定义DataGrid的项呈现器来实现. 呆毛如下: 本来以为可以非常顺利,哪知居然给我碰到了一个BUG,网上查了查,也有不少童鞋们碰到了这个问题,不过似乎都没有有效的解决方案,这个主要是思维固化了,总认为官方的就一定是正确的.

IOS 自定义 滑动返回 手势

/** 只需要在你自定义的导航控制器中,改成如下代码即可,自定义手势返回 */ #define KEY_WINDOW [[UIApplication sharedApplication] keyWindow] #define kScreenW KEY_WINDOW.bounds.size.width #define kAnimateDuration 0.3 #define kDefaultAlapa 0.5 #define kDefaultScale 0.95 #define iOS7 ([UI

第二十六篇、因为自定item(nav)而使系统右滑返回手势失效的解决方法

@interface ViewController () <uigesturerecognizerdelegate> @[email protected] ViewController - (void)viewDidLoad { [super viewDidLoad]; // 自定义返回按钮 UIButton *button = [[UIButton alloc]initWithFrame:CGRectMake(0, 0, 44, 44)]; [button setTitle:@"王

解决右滑返回手势和UIScrollView中的手势冲突

项目中遇到一个页面中是以一个scrollview横向Tab展示两个不同功能的显示,譬如消息和公告功能,但是由于滑动返回手势和scrollview的滑动返回手势冲突了,导致页面不再能够滑动返回.类似的还有图片浏览功能也出现过. iOS系统中,滑动返回手势,其实是一个UIPanGestureRecognizer,系统默认的操作是只有滑动屏幕的左边的某个位置,UIPanGestureRecognizer才会起作用.UIScrollView的滑动手势也是UIPanGestureRecognizer.那在

iOS开发--左滑返回手势失效

在UINavigationBar中设置了leftBarbuttonItem此时系统自带的左滑手势失效,应该如何开启? self.navigationController.interactivePopGestureRecognizer.delegate = (id<UIGestureRecognizerDelegate>)self;

自定义了leftBarbuttonItem左滑返回手势失效了怎么办?

self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithImage:img style:UIBarButtonItemStylePlain target:self action:@selector(onBack:)]; self.navigationController.interactivePopGestureRecognizer.delegate = (id<UIGestureRecognizerDele

iOS开发 自定义navigationleftItem 之后手势失效的问题

@property (nonatomic, strong) UIViewController *currentShowVC; //设置代理 self.navigationController.interactivePopGestureRecognizer.delegate =(id)self; self.navigationController.interactivePopGestureRecognizer.enabled = YES; if (self.navigationController

解决IE中img.onload失效的方法

原来 $("#QrCode").on("load",function(){ $(".loading").hide(); alert(1); }) //或者 document.getElementById("QrCode").onload = function(){ $(".loading").hide(); alert(1); } 看起来没什么问题,但是为什么onload在ie下经常没有被调用呢?因为浏览器

iOS自己定义返回button(不影响返回手势)

此方法能够自己定义返回button,且不影响返回手势. 新方法: self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithImage:img style:UIBarButtonItemStylePlain target:self action:@selector(onBack:)]; self.navigationController.interactivePopGestureRecognizer.dele