最近寫(xiě)轉(zhuǎn)場(chǎng)動(dòng)畫(huà)的SDK,發(fā)現(xiàn)切換模擬器后,會(huì)有一些bug,相同的代碼,在不同的模擬器上有不同的效果(模擬器都是相同的系統(tǒng))
1、UIPanGestureRecognizer
通過(guò)[recognizer translationInView:self.view] 獲取point
- 在6和se上面,point先改變?nèi)缓笫謩?shì)狀態(tài)變成
began,也就是point的x、y不為0之后。才變成began - 在6s和7上面,手勢(shì)先變成
bagan,然后point才開(kāi)始改變.

iphone6

iphone6s
筆者推斷,造成這些差異的應(yīng)該是因?yàn)?s和7使用了壓力感應(yīng)的屏幕。
2、snapshotViewAfterScreenUpdates
snapshotViewAfterScreenUpdates這個(gè)api是獲取當(dāng)前屏幕快照,于iOS7提出,一般使用于轉(zhuǎn)場(chǎng)動(dòng)畫(huà),例如[self.navigationController.view snapshotViewAfterScreenUpdates:NO],關(guān)于這個(gè)api用法介紹不再多說(shuō)。
- 在6、6s、se上面,這個(gè)api可以正常獲取屏幕截圖。
- 在7上面,這個(gè)api會(huì)獲得一個(gè)空白的view。

iphone6s

iphone7
需要說(shuō)明的是,均采用iOS10.2的系統(tǒng),都是模擬器,所以與系統(tǒng)無(wú)關(guān)