首页 > 其他分享 >FDFullscreenPopGesture使用setViewControllers跳转一个隐藏导航栏新页面失效问题

FDFullscreenPopGesture使用setViewControllers跳转一个隐藏导航栏新页面失效问题

时间:2023-10-13 14:35:04浏览次数:35  
标签:FDFullscreenPopGesture swizzledMethod1 class setViewControllers 跳转 originalMetho

解决办法:

1.对setViewControllers:animated:进行方法交换

SEL originalSelector1 = @selector(setViewControllers:animated:);

            SEL swizzledSelector1 = @selector(fd_setViewControllers:animated:);

            Method originalMethod1 = class_getInstanceMethod(class, originalSelector1);

            Method swizzledMethod1 = class_getInstanceMethod(class, swizzledSelector1);

 

            BOOL success = class_addMethod(class, originalSelector1, method_getImplementation(swizzledMethod1), method_getTypeEncoding(swizzledMethod1));

            if (success) {

                class_replaceMethod(class, swizzledSelector1, method_getImplementation(originalMethod1), method_getTypeEncoding(originalMethod1));

            } else {

                method_exchangeImplementations(originalMethod1, swizzledMethod1);

            }

2.实现交换后的方法

- (void)fd_setViewControllers:(NSArray<UIViewController *> *)viewControllers animated:(BOOL)animated {

    [self fd_setupViewControllerBasedNavigationBarAppearanceIfNeeded:viewControllers.lastObject];

    [self fd_setViewControllers:viewControllers animated:animated];

}

标签:FDFullscreenPopGesture,swizzledMethod1,class,setViewControllers,跳转,originalMetho
From: https://www.cnblogs.com/yang-shuai/p/17762026.html

相关文章

  • 关于response.setHeader的重定向及多种界面跳转方式
    通过response.setHeader("refresh","1;URL=ttt.jsp");可以在一秒之后自动跳转到ttt.jsp界面 response.sendRedirect("ttt.jsp");立即跳转 <inputtype="button"onclick="javascript:window.location.href='ttt.jsp';&quo......
  • 编程式导航——两种路由跳转方式
    编程式导航:通过JS的方式实现路由跳转如何实现点击按钮跳转? 一、不传参:1.通过path路径跳转(简易方便)①简写:  按钮的点击事件中写  this.$router.push('/路由路径')    比如:this.$router.push('/search') ②完整写法:this.$router.push({ ......
  • 【webapp】JSP页面间跳转和包含
    在JSP中,有两种常见的页面间跳转和包含方式:转发(forward)和包含(include)。转发(Forwarding):通过转发,一个页面可以将请求转发给另一个页面进行处理,然后由该页面生成响应。转发是在服务器端完成的,客户端并不知道实际的页面地址。使用转发的语法是 request.getRequestDispatcher("......
  • 禁止IE页面自动跳转到EDGE浏览器的方法
            注意:此操作后需要重启电脑才可生效,因此在没有重启前即便取消勾选打开部分网站依然还会继续自动跳转哦。 ......
  • nodemailer实现发送邮件后跳转静态页面
    写了一个静态展示页面,并通过node.js中的nodemailer实现发送邮件服务,发送结束后跳转到其他静态页面。点击查看代码constexpress=require('express');constnodemailer=require('nodemailer');constapp=express();//解析url-encoded格式的表单数据app.use(express......
  • vue:登录后跳转到之前要访问的页面([email protected])
    一,安装pinialiuhongdi@lhdpc:/data/vue/responsive$npm-Sinstallpinia安装完成后查看已安装的版本:liuhongdi@lhdpc:/data/vue/[email protected]/data/vue/responsive└──[email protected]二,代码:1,store/redirect.js123456......
  • 使用Springboot实现点击名称跳转到详情页面
    终于解决出来啦!!!嘎嘎嘎嘎~~~只需要在td标签里面嵌套上a标签就能实现啦!这里主要看一下功能,页面直接使用的白板~html页面的具体代码如下(将超链接标签a的样式进行了美化):<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>主界面</title></head>......
  • 《DjangoApp开发》第二集,创建项目骨架、主菜单页面及跳转
    2023年10月3日这节课做的事情创建项目目录对项目进行全局时间、配置创建项目骨架,配置一堆文件写主页面切换页面项目结构。当我们发现代码很长的时候就分成多个子目录菜单界面对战界面玩家玩家的技能玩家的每一个技能玩家的移动背景时间设置界......
  • uni-app中提供的五种形式的页面跳转
    面试题:uni-app中提供的五种形式的页面跳转:①导航跳转/保留跳转——在访问历史栈中保存当前页面,再打开下一个页面<navigatoropen-type="navigate"url="">②导航返回——返回访问历史栈中的上一个页面<navigatoropen-type="navigateBack">③重定向跳转/销毁跳转——不......
  • ARM汇编 --- 跳转指令 B、BL、BX、BLX的区别
    ARM的跳转指令介绍跳转指令用于实现程序流程的跳转,在ARM程序中有两种方法可以实现程序流程的跳转:(1)使用专门的跳转指令。(2)直接向程序计数器 PC写入跳转地址值。通过向程序计数器PC写入跳转地址值,可以实现在4GB的地址空间中的任意跳转,在跳转之前结合使用 MOVLR......