头图

本期技术周刊一起探究关于 iOS 的特性,欢迎大家阅读 ~

文章推荐

探究 iOS 内存问题 // 杭城小刘

本文从 Tagged Pointer、objc 源码、dealloc 原理、AutoreleasePool 原理、野指针探究等技术点展开聊了聊 iOS 内存相关问题。

一行代码解决 Scrollview 和 TextInput 焦点获取问题 // 似水流年

通过日志以及逻辑分析发现两个问题:

  1. 第一次点击列表项无法触发onPress点击事件
  2. 第一次点击其实是使输入框失去焦点并隐藏键盘

知道问题在哪就有解决问题的方向了:点击列表项使输入框自动失去焦点,并触发onPress点击事件。

【 iOS 】UITextField 输入长度限制时,中文输入法导致的输入问题 // Lynx

当我们有 UITextField 或者 UITextView 最大输入长度需求的时候,会面临一个问题,那就是如果我们使用系统输入法或者其他输入法的时候,在输入最后几个文字的时候,由于部分输入法会将拼音字母等高亮字符展示在输入框内,这时候输入长度就可能超过最大长度,从而导致最后几个文字输入失败,尽管这时候文字还没到最大输入长度。

技术总监:尽快解决这个 ios11 白屏问题 // 牛仔很busy

1 why:为什么会白屏呢?
首先,只有 ios11 才会出现,说明不是没有返回 html,从现象来看可以证实,页面上显示了标题,只是没有内容。通过抓包发现,确实有返回html。基本可以肯定,问题出现在浏览器这一层,也就是上图的红色部分。

2 why:为什么没有内容?
抓包发现有返回 html,也返回了入口 js,也就是 app.xxx.js 和 chunk-vendors.xxx.js。有 js,但没内容,那有两种可能:

  • 入口js没有执行
  • 入口js执行报错了,导致后面渲染页面的代码没有执行

一次 IOS 通知推送问题排查全过程 // 扣钉日记

发现问题:在上周一个将要下班的夜晚,测试突然和我打招呼,说IOS推送的修复更新上线后存在问题,后台报错。连忙跑到测试那里看报错详情,报错如下:
image.png

iOS 之 Swift

Swift 编译器之迷惑行为一 // rickytan

OptionSet 是 Swift 中比较常用的一个内置协议,它的存在算是填补了既要强类型,又要支持按位取与的空白,是对 OC 中 NS_OPTIONS 的桥接。从声明上可以看到,OptionSet 协议本身又服从 SetAlgebra 协议,后者只定义了常见的集合操作方法,如 union remove insert 等,而前者在 extension 中给了默认实现

Swift Talk:理解值类型 // Sunxb

我们使用写时复制 copy on write 的思想,对 NSMutableData 进行封装,以此来理解我们的标准库的实现方式。

标准库中提供的所有的基本集合类型都是值类型,通过写时复制的思想保证了他的高效性。集合类型是我们比较常用到的数据类型,所以了解他的性能特性很重要,我们来一起看一下写时复制是如何工作的,并且尝试自己手动实现一个。

问答推荐


# SegmentFault 技术周刊 #

「技术周刊」是社区特别推出的技术内容系列,一周一主题。

每周二更新,欢迎「关注」。大家也可以在评论处留言自己感兴趣的主题,推荐主题相关的优秀文章。

如有问题可以添加小姐姐微信~

image.png


Beverly
882 声望2.1k 粉丝

怂人面前全是坑,努力填坑 。