Recent posts

如果 table view 中有兩種以上的資料型態,你可以這樣處理程式碼

清單型的 UI 在 iOS App 上是非常常見的設計,從內建 App 的「聯絡人」、「通話紀錄」、「設定」都是用 Table(在另一個平台叫 list) 清單型的 UI 做出來的。TableView 在手機上有個很大的優點,他可以在有限的螢幕上,呈現超過螢幕的資訊,使用者只需要往一個方向滑,...

Alerts 出現選項時,主要動作要放哪一邊?左?右?(Apple 的 OS 請放右邊(也就是最後面))

Alerts 出現選項時,主要動作要放哪一邊?左?右? Alerts 是一種常見的用戶反饋機制,它可以提醒用戶發生了什麼事情,或者需要用戶做出一些決定。Alerts 通常會有一個或多個選項按鈕,讓用戶可以選擇接受、取消、確認、忽略等不同的動作。那麼,這些選項按鈕應該放在 Alerts 的哪一邊...

Delegate Pattern (委派模式)in Swift

Delegate Pattern 是 iOS 開發常用的設計模式,它可以讓一個物件將某些職責或行為委託給另一個物件,從而實現解耦和靈活性。在 Swift 中,我們通常使用 protocol 來定義 delegate 的介面,並讓 delegate 物件遵循該 protocol。在這篇文章中,我...

iOS 的 MVC 架構

MVC 是 Apple 範例框架,在 UIKit 的時代,這是個很重要的 pattern。最近有空的時間,都會花一點時間去看一本很久以前的書Cocoa 設計模式。

微軟新服務 Microsoft designer 現在不用排隊等白名單了,可以直接使用

如果你想要創造出專業品質的社交媒體貼文、邀請函、數位明信片、圖像等,你一定要試試 Microsoft Designer。這是一款圖像設計應用程式,可以幫助你從你的想法開始,創造出獨一無二的東西。Microsoft Designer 的亮點是它利用了人工智慧的技術,讓你只要輸入文字,就可以快速生...

當升級第三方版本時,什麼樣的版號會讓專案 build 失敗?

在 iOS 開發中,我們常常會使用第三方套件來增加功能或減少工作量。但是,如果我們直接下載套件的原始碼,或者使用 git submodule 的方式,我們可能會遇到一些問題,例如版本不一致、相依性不清楚、更新不方便等等。為了解決這些問題,我們可以使用 cocoapods 這個工具來協助管理第三...

Charts 的 4049 & 4132 issue,造成閃退的原因

Charts 是 iOS 專案開發中很常使用的圖表繪制套件,不過今年,我在專案上遇到了很奇怪的狀況,在 Firebase Crashlytics 的 Dashboard 上,一直有零星的閃退,這閃退是發生在使用 Charts 套件的 renderer 裡面。而且在 release 給 QA 時...