Xcode插件的实现-JSON格式化
发表于|更新于
|浏览量:
背景:开发中经常遇到需要格式化JSON字符串的情况,每次都是百度在线格式化解析好不方便,某天看到APP Store里有Xcode关于这个的插件,卖的老贵了,哈哈哈,于是就想自己也弄一个,先调研一下JSON格式化的实现原理,然后再看看Xcode插件的实现,最后还可以写个Mac版,给自己大大的赞😄
文章作者: 今是昨非
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 今是昨非的博客!
相关推荐
2016-01-28
动画效果:snapshotViewAfterScreenUpdates的使用
动画动画:复杂动画的实现:首先要拆分,明确你自己要实现的效果是什么,然后开始拆分,第一步实现什么,然后实现什么…,怎么样链接起来。把复杂的动画拆分成一个个小步骤,然后一步步实现就可以了。 snapshotViewAfterScreenUpdates(_:) 这个方法我在做拖拽tableView的item的时候(eg: SystemPreference)看到的,感觉用来做动画很好用。相当于截个图,然后拿着这个截图,实现各种动画效果。eg: 如果你是一个电商项目,将商品加入购物车,这个动画就可以用这个来实现(Ps:我记得京东还是淘宝久有这个效果,但是我却又找不到了),点击加入购物车,然后对商品生成一个快照,然后缩小移动到购物车(还可以加入旋转的动画),到购物车的位置,移除。Perfect! 我做的这个项目,读信的过程就是用这个效果实现,点击信封,然后生成快照,然后快照位移到屏幕中间,消失,然后信封详情出现。 实现 首先,定义动画效果的实现: 查看信件:a. 点击信件,然后生成信件快照; b.信件快照位移到屏幕中央;同时信件详情出现,信件快照消失; 关闭详情:a...
2021-11-24
iPhone Safari 下载企业包出现 apk
背景来水一篇文章,日常备用,知道的很简单,不知道怎么也查不到。。。。 有人反馈企业包下载链接,使用 iPhone Safari 打开后出现下载 apk 的提示 起初以为是用户手动设置了 userAgent,后来发现是设置——Safari——请求桌面网站的开关开启了。。。。 如下图,下面的开关要关闭 end哈哈哈
2022-09-07
iOS 编译时间优化
背景目前App项目不大,但是清空后重新编译时间需要200多秒,感觉不太合理,所以,就着手排查了一下。 通常的编译时间优化都是分为三个部分 Xcode编译设置的优化 代码或函数编译时间的优化 三方库编译时间的优化 这里就根据上面三个部分来一一排查。 实现Xcode编译设置的优化使用的是Xcode 13.4,网上搜到的,关于Xcode设置New Build System,及Build Settings中设置Debug Information Format的都不需要设置了,默认已经是合理的。至于Optimization Level的设置,设置后,虽然编译速度可以提升,但是对于Debug不友好,所以,这里也不做设置。故而针对这项优化什么都没有处理。 代码或函数编译时间的优化这方面主要是针对Swift,首先把编译耗时的方法显示出来,在Build Settings中Other Swift Flags添加如下设置,意思是显示编译超过200ms的函数或者类型检查超过300ms的函数显示warning,这里200ms是自己设定,可针对项目的真实情况设置: 1234-Xfrontend -w...
2024-02-19
RxSwfit 使用
RxSwift使用备忘RxSwift 常用方法使用,这里记录一下。 RxSwfit实现搜索distinctUntilChanged的作用是,相邻的重复事件不产生新的事件,所以搜索中使用distinctUntilChanged可以保证只有每次触发的搜索都是不同的字符串,也可以保证输入停止后只会触发一次搜索。 throttle 和 debounce 的区别: throttle 每隔固定时间调用 debounce 事件停止后隔多少秒调用 所以,如果需要实现输入中搜索,使用 throttle 1234567891011fileprivate func configureSearch() { searchBar.rx.text .orEmpty .throttle(1.0, scheduler: MainScheduler.instance) .distinctUntilChanged() .subscribe { [unowned self] (query) in ...
2019-05-02
iOS使用IconFont
IconFont的使用github链接背景: 最近设计提了要求,切图用IconFont一开始,在搜了IconFont的使用后,选中了TBCityIconFont,使用了之后,发现对于图片的支持不太好,就是长宽不等的图片,显示的时候会被截断,在具体实现里也没发现修改的地方。 然后就pass了,换了另一个Swift的Iconic的第三方库,这个库有个好处,是可以自动把.ttf文件里的Icon生成一个枚举使用的时候特别方便。然而缺点是安装的时候麻烦,之前只是稍微麻烦,最近变得特别麻烦,需要设置FONT_PATH。而且不支持最新版本的Swift,每次更新.ttf字体文件,都要改一次。 实在是受不了了,今天就抽空自己写(抄)了一个。😄有兴趣的可以自己看参考链接,其实就是参考链接里内容的整合。 实现首先,我想要的是,传入一个Int类型(eg: 0xe654)或者字符串类型(eg :\u{E61A})都支持。 然后如果是本地的文件,我希望可以不用手动收入unicode码。最后就是图片支持宽高不等的显示。 整体的原理是Working with icon fonts in iOS. Code...
2022-05-23
图片压缩 mac 应用开发
图片压缩 mac 应用开发背景3年前有个项目BatchProssImage,使用 Python 写的批量压缩图片的,最新再次使用时,发现忘记了怎么使用,所以就有了把这个Python 实现的工具,做成一个简单的 mac app 的想法。 过程想法很简单:印象中当时这个工具是使用 tinypng 的 api 压缩的,所以开发一个 mac客户端,调用压缩的接口,导出照片就可以。开始动工。 首先 mac 客户端的 UI 从哪里来?之前有个项目OtoolAnalyse——分析Mach-O文件中无用的类和方法,是借LinkMapUI 来实现的。这里想了想,嗯,还可以用这个方法。打开项目一看,OC 的,还是用 Swift 写一遍吧。 UI 实现想一下大致需要哪些功能, 选择文件 || 目录 选择导出目录 开始压缩 压缩进度显示 噢噢,还有一个,tinypng apikey 输入 再考虑一下,选择导出目录是否必要?之前笔者自己使用其他 APP 选择导出时,打断先有的操作且不说,对于选择困难来说,每次考虑要导出到哪里都是一个问题,要不要新建一个文件夹,还选择同目录会是什么效果等等。 改为 ...