第一篇 前言 从今天开始,我将开启一段源码解读的旅途了。在这里先暂时不透露具体解读的源码到底是哪些?因为也可能随着解读的进行会更改计划。但能够肯定的是,这一系列之中肯定会有S...
第一篇 前言 从今天开始,我将开启一段源码解读的旅途了。在这里先暂时不透露具体解读的源码到底是哪些?因为也可能随着解读的进行会更改计划。但能够肯定的是,这一系列之中肯定会有S...
工作的时候经常用Charles抓包,也学到了很多用Charles的很多小技巧,记录一下,说不定在某个时候就能提高自己的工作效率,让自己有多点时间摸鱼(bushi(其实是真的)...
延迟0.01秒就能够正常播放
``` dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.01 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[volumeViewSlider setValue:cVolume animated:YES];
[volumeViewSlider sendActionsForControlEvents:UIControlEventTouchUpInside];
方法一: [self.tableView scrollRectToVisible:CGRectMake(0, 0, 1, 1) animated:NO]; 方法二: [s...
在做关于聊天等一些app的时候,会有进入聊天页面时,需要将UITableView滑动到底部的操作,即显示最新的消息,有以下几种方法: 1、在viewDidAppear中设置t...
idleTimer idleTimer 是iOS内置的时间监测机制,当在一段时间内未操作即进入锁屏状态。但有些应用程序是不需要锁住屏幕的,比如游戏,视频这类应用。 可以通过设...
由于多个业务需要,在一个界面会有多个弹框的存在,而这多个弹框需要按顺序、优先级给统一管理起来,不然会杂乱无章的弹出,用户会一脸懵逼啊。我写了一个管理器,把弹框的出现和消失给管...
这几天在修改之前离职同事的项目,发现一个这样的问题,每次修改后或者没有修改打开过项目就会有一个文件说是修改过的,如果是多人开发的话,就会造成冲突,自己看着也不爽,如图: .D...
前言 在软件开发领域里经常能听到这样一句话,“过早的优化是万恶之源”,不要过早优化或者过度优化。我认为在编码过程中时刻注意性能影响是有必要的,但凡事都有个度,不能为了性能耽误...
设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器模式》《iOS设计模式(4)抽象工厂模式》《iOS设计模式(...
苹果底层是atomic的setter/getter是自旋锁,不是@synchronized
if (!atomic) {
oldValue = *slot;
*slot = newValue;
} else {
spinlock_t& slotlock = PropertyLocks[slot];
slotlock.lock();
oldValue = *slot;
*slot = newValue;
slotlock.unlock();
}
计算机通信原理 互联网的关键技术就是TCP/IP协议。两台计算机之间的通信是通过TCP/IP协议在因特网上进行的。实际上这个是两个协议: TCP: Transmission ...
存放在自己的客户端吧
互联网视频防盗链的研究(referer,Token防盗链)一.盗链的定义: 某内容不在自己服务器上,而通过技术手段,绕过别人放广告有利益的最终页,直接在自己的有广告有利益的页面上向最终用户提供此内容。 常常是一些名不见经传的小网站来...
一. 图像从文件到屏幕过程 接下来我们了解一下CPU和GPU在渲染的过程中的分工是什么? CPU(中央处理器) 1. 计算frame. 2.解压缩图片. 3. 将需要绘制的纹...