Android 常用shell


// 查看分辨率
adb shell dumpsys window | grep "ShownFrame" | head -n 1

// 查看屏幕密度
adb shell cat system/build.prop | grep density

Android 小部件

Android的Activity可以通过onSaveInstanceState()保存状态,Android的widget也会自动保存状态,唯一要做的就是给该widget声明一个id; 例如EditText,声明id后能在Activity重建后加载用户已输入的内容;CheckBox可以加载之前的选中状态。

IOS 知识点

1、为Controller的self.view 设置子UIScrollView 后,子UIScrollView 会自动设置contentOffsetadjustedContentInset 值,其偏移值为当前设备的状态栏高度:

iPhone 8
<UIScrollView: 0x7fda73073200; frame = (0 0; 414 736); clipsToBounds = YES; gestureRecognizers = <NSArray: 0x6000006403f0>; layer = <CALayer: 0x600000431420>; contentOffset: {0, -20}; contentSize: {0, 110}; adjustedContentInset: {20, 0, 0, 0}>

iPhoneX
<UIScrollView: 0x7ff43d040800; frame = (0 0; 375 812); clipsToBounds = YES; gestureRecognizers = <NSArray: 0x6040004518b0>; layer = <CALayer: 0x6000002226c0>; contentOffset: {0, -44}; contentSize: {0, 110}; adjustedContentInset: {44, 0, 0, 0}>


2、adjustedContentInset,UIScrollView的属性,用于将内容显示在SafeArea中

参考 iOS11及Xcode9适配问题汇总

3 后记

可能是我还没掌握IOS的精华,总觉得IOS系统做了太多的(不必要的)设定,为了掌握这些设定已经疲于奔命了。