游牧周记第38期
关注
最近听(看)了不少哲学方面的内容,颇有种信息量巨大,需要整理提炼的冲动,我看来应该做笔记,写点啥了。
大问题
哲学。喉咙不清,可能有轻度炎症。 但内容极好,选题精彩,节奏紧凑。 B站
徒梦的学习笔记
哲学对话,非视频! 作为背景听太棒了,台湾的。以2人对话方式展开。 Bilibili 后来发现内容是从其他语音平台搬运的,仅B站就还有类似频道。 原频道还没有找。
# PowerfulJRE
没啥好说的,Joe Rogan的访谈记录, 2000万+订阅。 Youtube 用来练英语听力不错。 B站的思维黑洞Lab,只有2k多粉,收集了大量的这类谈话节目,也不错看。
我的视频
App快速开发上架挑战
7天能完 成一个新App的开发和上架吗? 我的实际挑战纪录片B站。
阳台种菜
昆明降雨大降温,结果冰菜长得最好。
 
 

开发
expo-router和unistyle的冲突
我第一次使用unistyle,这时已经是v3+了,网上和AI掌握的很多资料失效过时。
核心在于执行顺序,要保证最早执行unistyle的configure,只有这个办法了:
// app.json中
"main": "index.ts"
// 新建index.ts(根目录)
import "./src/styles/unistyles"; // 初始化 unistyles 必须最先执行
import "expo-router/entry"; // 启动 Expo Router
不然再怎么配置也没有用。 官网说明
App开发的这些边距尺寸概念
下面这张图能帮你一眼看懂它们各自「量」的是哪一块:
┌────────────────────────────────────────┐
│  Status Bar   ← statusBar.height = 20  │
├────────────────────────────────────────┤
│                                        │
│            APP CONTENT                 │
│                                        │
├────────────────────────────────────────┤
│  Navigation Bar                        │
│  (虚拟三大键/手势指示条)                   │
│  ← navigationBar.height = 44           │
└────────────────────────────────────────┘
- 
insets 
 告诉你「内容区域」距离屏幕四周安全距离是多少。
 例如:insets = {
 top: 28, // 避开刘海 + Status Bar
 bottom: 40, // 避开 Navigation Bar
 left: 0,
 right: 0,
 ime: 0 // 键盘弹起时为键盘高度
 }所以: 
 insets.top通常 ≈ Status Bar 高度 + 刘海高度
 insets.bottom通常 ≈ Navigation Bar 高度 + 底部圆角高度
- 
statusBar 
 只量系统状态栏本身(电量、信号、时间那一栏)的 绝对尺寸。
 在 iOS 刘海屏和 Android 状态栏高度不同,但 不会 把刘海额外高度算进来。
- 
navigationBar 
 只量虚拟导航栏(三大键或手势提示条)的 绝对尺寸。
 如果设备启用了全面屏手势,这个高度可能是 0。
一句话总结
| 名称 | 描述 | 
|---|---|
| insets | 内容可安全放置的区域 ↔️ 你需要用它来做自适应布局 | 
| statusBar | 系统状态栏的精确尺 寸 | 
| navigationBar | 虚拟导航栏的精确尺寸 | 
布局时 优先用 insets,只有当你要精确知道状态栏或导航栏本身多高时才去看 statusBar / navigationBar。
