原创 [Android開發學iOS系列] ViewController

iOS ViewController 寫UIKit的代碼, ViewController是離不開的. 本文試圖講講它的基本知識, 不是很深入且有點雜亂, 供初級選手和跨技術棧同學參考. What is a View Controller i

原创 [Android開發學iOS系列] iOS寫UI的幾種方式

[Android開發學iOS系列] iOS寫UI的幾種方式 作爲一個現代化的平臺, iOS的發展也經歷了好幾個時代. 本文講講iOS寫UI的幾種主要方式和各自的特點. iOS寫UI的方式 在iOS中寫UI有多種選擇, 大的分類: 使用UIK

原创 [Android開發學iOS系列] 工具篇: Xcode使用和快捷鍵

[Android開發學iOS系列] 工具篇: Xcode使用和快捷鍵 工欲善其事必先利其器. 編輯 Cmd + N: 新建文件 Option + Cmd + N: 新建文件夾 Cmd + / : 註釋 Ctrl + I: format i

原创 [Android開發學iOS系列] 語言篇: Swift vs Kotlin

Swift vs Kotlin 這篇文章是想着幫助Android開發快速學習Swift編程語言用的. (因爲這個文章的作者立場就是這樣.) 我不想寫一個非常長, 非常詳盡的文章, 只是想寫一個快速的版本能讓你快速上手工作. 當然這個文章可能

原创 Android multiple back stacks導航的幾種實現

Android multiple back stacks導航 談談android中多棧導航的幾種實現. 什麼是multiple stacks 當用戶在app裏切換頁面時, 會需要向後回退到上一個頁面, 頁面歷史被保存在一個棧裏. 在Andr

原创 DNS的各種記錄類型的應用解析

可能很多人平時工作中不會遇到DNS配置相關的問題, 但如果偶爾遇到不同類型DNS記錄的配置, 在沒有搞清楚它們都是幹啥的情況下, 會眼花繚亂, 還記得很多年前實驗室配置DNS不太對導致只能訪問www.instlink.com, 而無法解析s

原创 Android Compose的Window Insets

Android Compose的Window Insets 除了app的內容區域外, 還有一些其他的固定元素會顯示在手機屏幕上, 頂部的狀態欄, 劉海, 底部的導航欄, 還有輸入法鍵盤, 它們都是系統的UI, 也叫Insets. 如圖所示:

原创 一文搞懂Google Navigation Component

一文搞懂Google Navigation Component 應用中的頁面跳轉是一個常規任務, Google官方提供的解決方案是Android Jetpack的Navigation component. 本文概括介紹一下基本使用的關鍵點(

原创 ViewModel的創建

ViewModel的創建 ViewModel本身只是ViewModel這個類的子類: class MainViewModel: ViewModel() { } 在屏幕旋轉UI重建的時候, 它是如何擁有保持數據的能力的呢? 它又是何時被清理

原创 Android Weekly Notes #489 Android Weekly Issue #489

Android Weekly Issue #489 Roadmap for Jetpack Compose 這個總結還挺好的, Compose的方方面面, 可以作爲一個checklist. Jetpack Compose: filling

原创 Android Weekly Notes #488 Android Weekly Issue #488

Android Weekly Issue #488 How to Secure Secrets 🔑 in Android (In-Depth) — Android Security-02 https://github.com/googl

原创 Android Weekly Notes #487 Android Weekly Issue #487

Android Weekly Issue #487 Jetpack Compose with Robot Testing Pattern Jake Wharton早年關於robot testing的文章. https://jakewhart

原创 Android Weekly Notes #485 Android Weekly Issue #485

Android Weekly Issue #485 Accessibility in Jetpack Compose Accessibility的codelab. Benefits of building components instea

原创 Android Weekly Notes #486 Android Weekly Issue #486

Android Weekly Issue #486 All About Opt-In Annotations Kotlin中的opt-in機制. 有一些api直接使用, 會有警告, 加上這些標記表明自己是故意爲之. This can gua

原创 Android Weekly Notes #484 Android Weekly Issue #484

Android Weekly Issue #484 Don't let ViewModel know about framework level dependencies ViewModel不應該有framework的依賴. 文章裏測試的寫