前言 文章的初衷很简单,是为了能够正常显示打印出字典里面的中文。因为默认情况下,直接打印字典的话,在Xcode控制台上,中文会是乱码的,需要Unicode转码才能看到中文。比...
前言 文章的初衷很简单,是为了能够正常显示打印出字典里面的中文。因为默认情况下,直接打印字典的话,在Xcode控制台上,中文会是乱码的,需要Unicode转码才能看到中文。比...
开发过macOS应用的同学都知道,NSWindow拥有一个几乎相同的titlebar,最左边是交通灯按钮,中间是标题等,那如何不要这些元素呢? 你会发现很完美,除了不能移动w...
NSButton并没有UIButton可以设置state的接口,虽然系统提供了很多button的样式,但是自定义程度不够高,比如hover或highlighted的效果。没关...
打开 115 离线下载的窗口,看到支持这么多种链接,你都清楚他们是什么原理嘛?接下来我们一个一个说。 一、HTTP(超文本传输协议)/ HTTPS 将文件放到服务器上,然后...
栈对象、堆对象 栈是一块保存局部变量或函数参数值的内存区域。在现代的操作系统中,每个线程都有一个对应的栈。当函数调用时,一个栈帧Stack Frame会被放入栈内。栈帧保存了...
(辛苦二哥了😂😂😂😂😂😂😂😂) 前言: 两次被苹果官方拒绝,都是同一个问题,让我懊恼了好一会。经过搜罗了一些资料信息后才发现,原来是审核又严了,以前“是否允许APP使用XXX...
个人的觉得应该从值类型和引用类型出发去理解;我们知道,在OC中struct是值类型的,也就是说当将一个结构体赋值给另一个结构体时,二者实际上是相互独立互不影响的,那么对于文中说的这种情况,当使用@property修饰的结构体,我们虽然表面是可以直接访问到,但是实际上我们是调用的编译器自动生成的get方法,这样就会有问题,因为struct是值类型,所以get方法会返回一个完全独立的struct,而这种修改是完全没有意义的,所以,编译器就禁止了这种调用;而对于第二种情况,当使用@public修饰struct时,外部是直接访问到的该struct,而不是该struct的一个值拷贝,所以是可以的
最近在补源码阅读方面的短板,第一个选择的就是AFNetworking,一方面AF的编码思路、代码质量都属于开源框架的上乘;另一方面也可以借机温习一下网络方面的东西。AF源码解...
最近很多同学问我,swift语言中,??是怎么回事。因为在微信交流中,问题不能被清晰表述,所以我很奇怪对于这么简单的一个运算符,会有这么多同学有疑问。后来随着对问题理解的深入...
写在开头: 本来这篇内容准备写在AFNetworking到底做了什么?(三)中的,但是因为我想在三中完结这个系列,碍于篇幅所限、并且这一块内容独立性比较强,所以单独拎出来,写...
RAC 指的就是 RactiveCocoa ,是 Github 的一个开源框架,能够帮我们提供大量方便的事件处理方案,让我们更简单粗暴地去处理事件,现在分为 Reactive...
写在开头: 作为一个iOS开发,也许你不知道NSUrlRequest、不知道NSUrlConnection、也不知道NSURLSession...(说不下去了...怎么会什么...
写在开头: 大概回忆下,之前我们讲了AFNetworking整个网络请求的流程,包括request的拼接,session代理的转发,response的解析。以及对一些bug的...
前言 iOS开发中,用来显示一个html页、H5页,经常会用的一个控件是WebView。说到WebView,你知道多少呢?是简单的展示,还是要和OC交互实现比较复杂的功能呢?...
本文长期更新!M系列芯片的机型也适用 Xcode16 pod init等命令执行出错的请参考点击这里这里这里这里[https://github.com/CocoaPods/C...
demo地址:https://github.com/xiaochaofeiyu/YSCAnimation有用的话求个star,欢迎建议讨论。 1. CAGradientLay...
欢迎访问我的博客muhlenXi,该文章出自我的博客。 导语: 在项目中,有时需要跳转到系统设置的某一个界面让用户去设置相关属性。比如一个蓝牙的APP需要检测用户是否打开了蓝...
背景 上一篇博客iOS 10 消息推送(UserNotifications)秘籍总结(一)发布后被 简书编辑推荐至首页,这着实让我受宠若惊啊。可是好事不长,后面发生了让我伤心...
静默推送 先来看下普通推送和静默推送的区别: 普通推送:收到推送后(有文字有声音),点开通知,进入APP后,才执行-- (void)application:(UIApplic...