更優雅地判斷iOS裝置型別

2021-09-11 14:50:19 字數 779 閱讀 4466

隨著iphonex的發布,導航欄高度在iphone中也不再是乙個64的常量了。 因此,很多地方需要針對齊劉海的導航欄高度做適配,目前網上很多關於判斷是否為iphonex,使用了螢幕寬高來比較或者utsnamemachine來判斷。 這兩個方法都有一些缺點,使用寬高不夠優雅,以後可能出現相同寬高的螢幕,只使用utsnamemachine的話,在模擬器上就不好做適配了。 於是,在github上看到乙個swift的庫devicekit , 如果裝置是模擬器的話,可以通過nsprocessinfo中的environment拿到simulator_model_identifier值,這個值就是模擬的真機的模型。 不過,這個swift庫使用的列舉型別不能被oc呼叫,老專案中又是使用oc的,因此寫了個oc版的: hldevice。 使用方法很簡單,將工程中的hldevice資料夾拖入你的工程:

#import "hldevice.h"

...hldevice *device = [[hldevice alloc] init];

if (device.devicemodel == hldevicemodel_iphonex )

複製**

hldevice目前有兩個屬性:hldevicemodel,hldevicetype,

如何更優雅地切換Git分支

在日常開發中,我們經常需要在不同的 git 分支之間來回切換,特別是業務需求比較多的開發人員。在分支較多的情況下,分支名的 tab 自動補全會比較糟糕,切換時我們不免需要複製或手打分支名,那麼有沒有更優雅的方式了呢?為了提高切換 git 分支的效率,我用 golang 寫了git checkout ...

如何更優雅地切換Git分支

在日常開發中,我們經常需要在不同的 git 分支之間來回切換,特別是業務需求比較多的開發人員。在分支較多的情況下,分支名的 tab 自動補全會比較糟糕,切換時我們不免需要複製或手打分支名,那麼有沒有更優雅的方式了呢?為了提高切換 git 分支的效率,我用 golang 寫了git checkout ...

如何更優雅地切換Git分支

在日常開發中,我們經常需要在不同的 git 分支之間來回切換,特別是業務需求比較多的開發人員。在分支較多的情況下,分支名的 tab 自動補全會比較糟糕,切換時我們不免需要複製或手打分支名,那麼有沒有更優雅的方式了呢?為了提高切換 git 分支的效率,我用 golang 寫了git checkout ...