iOS/macOS系列文章

蘋果咬一口

iOS/macOS系列文章

[iOS]SwiftUI iOS14 Sheet 不顯示的問題

問題描述 只要在同一個 View 當中有 連續 或是 嵌套 的 Sheet 有作用的 Sheet 只會是最後或最外層的一個,其他的將會不顯示 版本 Life Cycle: SwiftUI App iOS Version: 14.0 ~ 14.4 示範 案例1(嵌套) import SwiftUI struct ContentView: View { @State private var flagInside = false @State private var flagOutside = false var body: some View { VStack { Button("Open inside"

By Michael

iOS/macOS系列文章

[iOS]SwiftUI 筆記-Text

前言 此系列文章主要為記錄學習 SwiftUI 上的筆記 以防久不使用而遺忘,故內容上不像一般文章那樣完整 請見諒 基本使用 Text("Hello World.") 字型 基本 Text("Hello World.").font(.body) 進階 Text("Hello World.").font(.system(size: 30, weight: .bold, design: .default)) 粗體 Text("Hello World.").bold() 斜體 Text("Hello World.").italic() 刪除線 Text("Hello World.").strikethrough() Text("Hello World.").strikethrough(true,

By Michael

iOS/macOS系列文章

[iOS]Firebase twitter auth 使用教學

前言 這是 Firebase 快速登入的第二篇,使用的是 Twitter PS: 基本設定都在第一篇 [iOS]Firebase phone auth 使用教學 中 另外要使用 Twitter 快速登入,需要去註冊 Twitter 開發者帳號 並建立一個應用程式取得 Key 及 Token 如果不知道怎麼申請,可以參考 這篇 Step 1 (設定 Firebase) 1. 將 Twitter 的 Key 及 Token 填入 2. 將 Firebase 的 callback URL 設定到 Twitter 的應用程式中 3. 勾選啟用後儲存

By Michael

iOS/macOS系列文章

[iOS]Firebase phone auth 使用教學

前言 好久沒有寫文章了,這次就把幾種比較常見的 Firebase 快速登入給寫成文章 Firebase 建立專案的步驟就請參考 [PHP]Firebase phone auth 使用教學 中的 Step 1、Step 2 PS: Step 2 最後一步加入網域的部分就不需要了 此教學需要基本程度的 iOS 開發經驗 專案建立、基本元件(按鈕、輸入框、文字)、事件、Swift語法、Xcode操作、CocoaPod等 若是無經驗者會比較吃力 Step 1 (新增應用程式) 這次我們要在 Firebase 新增一個 iOS 的應用程式 選擇最左邊的 iOS icon 剩下的就按照畫面上的步驟做就好,這邊沒有難度 這邊可以在 Podfile 順便加入這次需要用到的套件

By Michael

走過的坑

[坑]Apple上架審核的坑

最近第一次上架了一款自己開發的macOS APP 事前知道蘋果審核非常的難搞 但不知道居然這麼難搞 被退件的原因如下 Guideline 4.1 - Design Your metadata appears to contain third party content. Specifically, we have found the name and subtitle is leveraging Windows. “For friends from Windows” Next Steps Please remove this content from your app and its metadata. 原來文字敘述內有提到 Windows 就被退件了 還有其他開發者分享經驗 * 圖片內有個機器人頭,

By Michael

iOS/macOS系列文章

[iOS]使用Swift解決鍵盤擋住輸入框問題

前言 iOS開發會遇到的問題中,鍵盤擋到輸入框這件事一定包括在內 網路上也提供了很多解決的方案 我自己評估了方便性、實作難易度、呈現效果後 提供給大家一個我自己比較喜歡的一種方式 範例(in Swift 5) 需要將想監聽的輸入框元件的 delegate 設定到本 ViewController import UIKit class ViewController: UIViewController, UITextFieldDelegate { /* 暫存輸入框元件 */ var currentTextField: UITextField? /* 暫存 View 的範圍 */ var rect: CGRect? func textFieldDidBeginEditing(_ textField: UITextField) { /* 開始輸入時,將輸入框實體儲存 */ currentTextField = textField } overr

By Michael

iOS/macOS系列文章

[iOS/macOS]使用Swift設定等寬字體

前言 使用等寬字體可以解決因文字長度不變但內容改變的情況下總寬度會變化的問題 如果是一開始就決定好的畫面可以用IDE設定字體 那如果是動態產生的元件要怎麼用呢? 語法 /* macOS 將 UIFont 改成 NSFont */ let font = UIFont.monospacedDigitSystemFont(ofSize: 14.0, weight: UIFont.Weight.regular) 範例 /* 設定好文字大小及字體樣式 */ let font = UIFont.monospacedDigitSystemFont(ofSize: 14.0, weight: UIFont.Weight.regular) for i in 0...4 { let label = UILabel(frame: CGRect(x: 0, y: i * 40, width:

By Michael