首页
学习
活动
专区
圈层
工具
发布

iOS开发 使用Pods管理调试个人Framework写在前面准备工作编写Podfile测试后记

写在前面 最近换了新公司,又是一个巨大的挑战 一是海外项目,二是协同,三是使用Swift 虽说Swift4.0已经很新了,但ABI的稳定进程还是放在了5.0,加上之前几乎没怎么用过Swift做过什么大型项目...很快这个任务就落到我头上了,前期踩坑基本都是参照这篇比较新的文章 手把手教你高效快捷的创建Swift Framework 这篇已经几乎把该用到的内容都讲了。...test 大功告成~ 测试二 我们现在要做的是: 主程序调用SDK获得一个vc 并 present 该vc中有一个按钮,点击事件的具体实现由主程序实现dismiss 在SDK中创建一个TestViewController...{ let vc = TestViewController() vc.testBtnActionHandel = actionHandle vcHandle(vc) } 编译一下...btn) in vc.dismiss(animated: true, completion: nil) }) }, for: .touchUpInside

2.1K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【IOS开发基础系列】UIViewController专题

    解决方法1:去掉动画     解决方法2:监听当前view的动画是否完成     问题场景:         此类问题比较容易出现在两个vc连续push或者pop的时候,简单做法就是将push或者pop...Push/Pop,NavigationViewController 2. Present and dismiss Modal 3....然后更新InteractiveTransition的百分数。     3.手势结束时,把正在切换的标设置回NO,然后进行判断。...;     完成了,如果向下划动时,效果如下:     交互驱动的VC转移 3.3 关于iOS 7中自定义VC切换的一些总结         demo中只展示了对于modalVC的present和dismiss...另外一个很好的福利是,对于标准的navController的Pop操作,苹果已经替我们实现了手势驱动返回,我们不用再费心每个去实现一遍了,cheers~         另外,可能你会觉得使用VC容器其提供的

    1.8K30

    iOS_Custom Transition Animation 自定义转场动画

    1、push-pop 动画协议 想要在 push 和 pop viewController 时使用自定义的转场动效,需要设置self.naviagtionController.delegate, 并实现...{ return a pop animator // 实现pop动画的对象 } } ---- 2、present-dismiss 动画协议 想要在 present 和 dismiss...{ return a pop animator // 实现 dismiss 动画的对象 } Tips: 这个协议谁实现都可以:fromVC or toVC or new an object, as...协议时,不要实现以上2个返回animator的方法,而是实现以下返回UIPresentationController的方法: // 返回实现 present-dismiss 动效的VC func presentationController...然后在presentationTransitionWillBegin和dismissalTransitionWillBegin方法里执行的动画,仅是添加了一个偏暗的背景View,然后调整alpha动画显示和消失

    75421

    iOS 转场动画探究(一)

    什么是转场动画:        转场动画说的直接点就是你常见的界面跳转的时候看到的动画效果,我们比较常见的就是控制器之间的Push和Pop,还有Present和Dismiss的时候设置一下系统给我们的modalTransitionStyle...*** 官方支持以下几种方式的自定义转场:          1、我们最常见的在 UINavigationController 中 push 和 pop;          2、也是比较常见的在 UITabBarController...的父VC的方式相同。...这里是Demo的下载地址       这里是我学习这些内容的原文的博客的地址大家可以去看看原文,原文链接Demo还有Swift版本的Demo给大家,感谢作者!      ...然后在这里:TransitionAnimation 学习笔记 开头给出了答案,再理解一下。

    3.2K50

    iOS 面试策略之经验之谈-面向协议的编程

    2015 年 WWDC,苹果第一次提出了 Swift 的面向协议编程(Protocol Oriented Programming,以下简称 POP ),这是计算机历史上一个全新的编程范式。...那么问题来了,既然 OOP 如此万能,为什么 Swift 要弄出全新的 POP ? [1240] 笔者认为,原因有三。其一,OOP 有自身的缺点。在继承、代码复用等方面,其灵活度不高。...而 POP 恰好可以优雅得解决这些问题;其二,POP 可以保证 Swift 作为静态语言的安全性,而彼时 Objective-C 时代的 OOP,其动态特性经常会导致异常;其三,OOP 无法应用于值类型...*vc = ......]; // 能通过编译,但运行到ob时程序会崩溃 } // Swift中使用了POP let vc = ... let tvc = ... let ob = ...

    1.7K30

    Why Swift? Generics(泛型), Collection(集合类型), POP(协议式编程), Memory Management(内存管理)

    这段时间几个项目都用到 Swift,在上次 GIAC 大会上就被问到为什么要用 Swift,正好这个主题可以聊聊 Swift 的哪些特性吸引了我。 泛型 先来个例子看下泛型是解决什么问题的。...func showNations(arr : [String]) { arr.map { str in print("\(str)") } } 我们先定一个字符串数组,然后把里面的字符串打印出来...下面看看 Swift 源码(swift/stdlib/public/core/SequenceAlgorithms.swift.gyb)中 flatmap 的实现: //===------------...Stack Stack 的结构很简单,push 和 pop 就完事了,内存上只需要维护 Stack 末端的指针即可。...一个函数被调用时会先去读取对象的函数表,再根据类的地址加上该的函数的偏移量得到函数地址,然后跳到那个地址上去。从编译后的字节码这方面来看就是两次读取一次跳转,比直接派发还是慢了些。

    1.7K20

    自定义转场详解(一)

    在现在的SDK中,如果当前的VC是被显示的话,这个消息会被直接转发到显示它的VC去。但是这并不是一个好的实现,违反了程序设计的哲学,也很容易掉到坑里。...系统在接收到这个消息后,将对VC状态进行维护。...手势驱动百分比切换 现在我们增加一个功能,就是用手势滑动来dismiss,通俗的说,就是让present出来的那个控制器使用手势dismiss。...让外部类可以看到传入手势dismiss的VC的入口。 2.既然传入了这个需要手势dismiss的VC,我们就需要保存一下,方便当前类在其他地方使用,所以我们新建一个属性来保存这个传入的VC。...3.和创建PresentAnimation一样,我们创建一个一个DismissAnimation类 4.最后,我们在主控制器中添加一个手势驱动的对象,一个dismiss转场的对象,然后懒加载。

    1.2K60

    关于自定义modal的转场动画

    然后在目标控制器中设置遵循UIViewControllerTransitionIngDelegate协议。...caseDDWModalAnimationTypeDismiss: { [selfanimateDismiss:transitionContext]; break; } default: break; } } 然后实现自定义的类方法...instancetype)DDWAnimateWithType:(DDWModalAnimationType)type { return[[selfalloc]initAnimateWithType:type]; } 然后分别实现两个动画...添加手势的实例方法 -(void)addPanGestureForVC:(UIViewController*)VC; .m中的实现部分 添加三个私有属性,记录当前手势方向,动画类型以及添加手势的控制器。...在具体的vc中直接引用即可。 源控制器中,添加管理者。 执行顺序,当手势触发是,因为手势种类是present,方向是up,故手势调用block中的方法,从而模态跳转。

    1.4K30

    切勿将辅助驾驶宣传成智能驾驶 | 肘子的 Swift 周报 #078

    访问我的博客 肘子的 Swift 记事本[2]查看更多的文章。加入 Discord[3]社区,与 2000+ 中文开发者深入交流 Swift、SwiftUI 开发体验。...前一期内容|全部周报列表 欢迎 点赞、 转发 原创 远离 dismiss,拥抱状态驱动[4] 在 SwiftUI 开发中,环境值 dismiss因其灵活、自适应的特性备受开发者青睐。...频繁使用 dismiss 可能在应用程序中埋下隐患,引发测试难题乃至难以追踪的稳定性问题。本文将分析我们为何应谨慎对待 dismiss,并介绍更加健壮可靠的状态管理方案。...Swift 的跨平台编译 [9] 提升跨平台编译能力,是 Swift 向全平台生态迈进的重要一步。...[3] Discord: https://t.ly/gzxeh [4] 远离 dismiss,拥抱状态驱动: https://fatbobman.com/zh/posts/say-goodbye-to-dismiss

    42900

    iOS 组件化-路由解耦思想 JLRoutes 实战篇(一)App内控制器跳转

    不同设备之间需要交互时, 将消息发送到路由器中统一处理; 当控制器之间需要交互跳转时, 只需要将对应的 URL 地址发送到 Router 里, Router 根据其注册的 URL 来寻址到对方信息, 然后负责实例化对象...presented/dismiss) , 导航控制器跳转(Push/pop) , Storyboard 跳转(Segue) , 还有 UITabBarVC 主控制器 Index 切换; 除了常规的控制器之间跳转之外...下面引用常见场景来举个栗子: Router 前 伪代码: 假如在没有引入 Router 之前, 实现 A Push B, B Modal C 的场景: 一般做法都是在 A 中引入B, B 中引入 C, 然后在每次跳转前都需要来一段硬编码...代码阅读性提高: 当然在刚刚接触时, 看着会不大不习惯, 等接触一段时间之后, 不仅减少了代码行数, 同时可读性还是很高的, 跟 push/pop, present/dismiss 说再见吧; 3....[vc isKindOfClass:[UIViewController class]]) { vc = nil; } #if DEBUG //vc不是UIViewController

    2K20
    领券