發表文章

目前顯示的是 11月, 2019的文章

[SwiftUI] Do something after toggle value changed

這個用法找好久 @@ 一定要紀錄一下 在 SwiftUI 中的 Toggle 是一個圖形的開關 這個東西 算是只做一半 跟 Button 比的話 因為 Button 可以觸發事件:     Button(action: {動做}) {顯示} 可是:     Toggle(isOn: 綁定變數) {顯示} 這樣變成如果只是撥動 Toggle 的話 是沒辦法直接動做的 其實這問題在 Xcode 11 beta 版就已經有人反應 也有對應方式 不過  因為 BindingObject 被廢棄 換成 ObservableObject 裡面的用法也變了  所以一直找不到到底要怎樣正確去觸發動作 最後找到以下的寫法 可以在撥動 Toggle 的時候 觸發出動作 class toggleClass: ObservableObject {     var obChange = ObservableObjectPublisher()       @ Published var toggleOnOff = false {         willSet {             self.obChange.send()             print("You can do some thing here~~")         }     } } struct ContentView: View {     @ObservedObject var toggleState = toggleClass()     Toggle(isOn: $toggleState.toggleOnOff) {         Text("test")     } }

[SwiftUI] "Unable to boot the simulator" 的暫時解法

這問題  其實很怪的遇到 可能是Xcode中的code有問題 可是找到的說明都是SIP(System Integrity Protection)的問題 https://www.imore.com/how-turn-system-integrity-protection-macos 做法是參考這篇 不知為啥的 照做一次就又好了 @@ 反正就是 沒太懂怎樣造成的 病急亂投醫的用了這篇 然後就不知為啥的又恢復可用.....XD 翻譯一下他的做法 1. 用左上角的蘋果 重開機 2. 按 command + r 進入除錯模式 3. 點選上方的 "工具程式" 選 "終端機" 4. 在終端機裡面輸入  csrutil disable 5. 再點左上角的蘋果 重開機 這問題找了半天都沒啥比較明確的結果 暫時先用這解法 不知道之後會有啥不良影響 記錄一下到底做啥事