SwiftUI

SwiftUI

【SwiftUI】onChangeがiOS17で変更前の値(oldValue)が使い易く

変更内容 iOS17以降でonChangeに追加が入りました。 public func onChange<V>(of value: V, initial: Bool = false, _ action: @escaping (_ oldVa...
SwiftUI

【SwiftUI】InteractiveWidgetでアプリ側のCoreData(SwiftData)が更新されない(iOS17)

iOS17からInteractiveWidgetとしてWidgetでButtonとToggleが使用可能になりました。使い方については別途紹介する予定ですが、今回はCoreDataの値が更新されない問題があったので、そちらについて書いていき...
Swift

【Swift】swiftからChatGPT APIを使ってみる

ここ暫く話題になっているChatGPTですが、3月1日にAPIが公開されました。元々OpenAI APIがあり、そこにChatGPTのAPIが追加された形になります。今回はswiftからこのChatGPT APIを使ってみます。 前書き 今...
SwiftUI

【SwiftUI】sheetをpresentationDetentsでハーフモーダルにする(iOS16)※セミモーダル、ボトムシート

SwiftUIでsheetをハーフモーダルにする方法について紹介します。 UIKitには先行してiOS15からUISheetPresentationControllerが実装されていましたが、SwiftUIではiOS16でpresentat...
SwiftUI

【SwiftUI】onLongPressGestureを離した時に実行する

SwiftUI長押しを実装する際にonLongPressGestureやLongPressGestureを使用します。これは通常、指定した時間長押しすると手を離さずとも実行されます。 今回はこれを手を離したタイミングで実行する方法を紹介しま...
SwiftUI

【SwiftUI】GeometryReader内で@AppStorageが再描画されない場合の対処法

GeometryReader下で@AppStorageでマークした変数を使用して描画を行なっていても、変数の変化により再描画されない場合があります。 こういった場合はGeometryReaderを別のViewに分ける事で解決します。 @St...
SwiftUI

【SwiftUI】List(PlainListStyle)配下のsheetでFormの背景が白くなる(iOS16)

PlainListStyleのList配下のFormで背景が白くなる場合がありました。iOS16から発生しています。同じコードでもiOS15では発生しませんでした。 どうやらlistStyleにplainを指定しているとsheet内のFor...
SwiftUI

【SwiftUI】iOSでDropDelegateのdropEnteredでloadObjectやloadItemが動作しない

DropDelegateについて SwiftUIでDrag&Dropを実装する際、簡単な内容であればonDragとonDropで実装できます。 しかし、細かい動作を指定したい場合はDropDelegateを使用します。中でもドラッグしたまま...
Swift

【SwiftUI】Core ML Stable Diffusionをアプリに実装する サンプルコード

以下の記事で作成したコードに若干手を加えたものがあるので、せっかくなので公開します。ざっくり作っただけなので粗がありますが参考までに Sample1 promptとseedとdisableSafetyを追加、seed=-1でランダムseed...
Swift

【SwiftUI】Core ML Stable Diffusionをアプリに実装する

今回はCore ML Stable Diffusionをアプリで実行できるようにします。 残念ながら私はApple Siliconを搭載したiPadを所持していない為、macOSに対応したマルチプラットフォームiOSアプリとして作成していま...