タグ付けされた質問 「swiftui」

SwiftUIは、グラフィカルユーザーインターフェイスを定義するためのAppleの宣言型Swift APIです。このタグは、任意のプラットフォームのSwiftUIに関する質問に使用します。

3
SwiftUI NavigationLink非表示矢印
自動的に追加されるナビゲーションリンクビューの右側の矢印を非表示にする方法はありますか? NavigationView-> List-> HStack-> NavigationLink_1-NavigationLink_2を使用して画像グリッドを表示したい NavigationLinksには矢印があり、奇妙に見えます

1
Xcodeで「前提条件エラー」をデバッグする方法は?
Xcode 11でSwiftUIアプリを作成していますが、アプリの特定のタブに切り替えるとすぐに終了します。 事は、それは常にApplication Delegateファイルを指していますが、それは本当に問題ではないと思います。コンソールでもこの​​エラーが発生してprecondition failure: invalid input index: 2いますが、それだけです。このエラーの原因となっているファイル、配列、または関数に関する詳細はありません。 この問題の原因となっているXcodeを特定する方法はありますか?

1
Swiftのバインディング内でオプションの値をアンラップするにはどうすればよいですか?
私はSwiftUIを使用してアプリを構築していBinding<Value?>て、Binding<Value>を> に変換する方法を望んでいます。 私のアプリには、AvatarView特定のユーザーのために画像をレンダリングする方法を知っているがあります。 struct AvatarView: View { @Binding var userData: UserData ... } 私のアプリは、ContentView2つのバインディングを所有するを保持しています。IDによるユーザーの辞書と、アバターを表示する必要があるユーザーのIDです。 struct ContentView: View { @State var userById: Dictionary<Int, UserData> @State var activeUserId: Int var body: some View { AvatarView(userData: $userById[activeUserId]) } } 問題:上記のコードは$userById[activeUserId]タイプBinding<UserData?>でAvatarViewを受け取るため、結合されませんBinding<UserData>。 私が試したもの... $userById[activeUserId]!を展開しようとしているため、機能しませんBinding<UserData?>。アンラップできるのはだけOptionalではなく、Binding<Optional>です。 $(userById[activeUserId]!)私はまだ理解していない理由で機能しませんが、$コンパイル時に何かが解決されるので、任意の式の前にを付けることはできないようです$。
9 ios  swift  swiftui  combine 

1
リストのSwiftUI行の高さ-制御する方法?
SwiftUIにシンプルなリストがあります。以下に含まれるコードとスクリーンショット。リストの各行の高さを低くしたいと思います(そのため、行とテキスト行の間のスペースが狭くなっています)。 私はすでに ".frame(height:20)"をHStackに追加しようとしましたが、行間隔を増やすことしかできません! それを行う方法はありますか? ありがとう! ジェラール import SwiftUI struct PressureData: Identifiable { let id: Int let timeStamp: String let pressureVal: Int } struct ContentView : View { @State var pressureList = [ PressureData(id: 0, timeStamp: "11:49:57", pressureVal: 10), PressureData(id: 1, timeStamp: "11:49:56", pressureVal: 8), PressureData(id: 2, timeStamp: "11:49:55", pressureVal: 9), …

2
SwiftUIでスワイプジェスチャーをUIKitと同じ動作に戻す方法(interactivePopGestureRecognizer)
インタラクティブなポップジェスチャー認識機能では、ユーザーが画面の半分(またはそれらの線の周り)を超えてスワイプすると、ナビゲーションスタックの前のビューに戻ることができます。SwiftUIでは、スワイプが十分でないとジェスチャーがキャンセルされません。 SwiftUI: https ://imgur.com/xxVnhY7 UIKit: https ://imgur.com/f6WBUne 質問: SwiftUIビューの使用中にUIKitの動作を取得することは可能ですか? 試み UIHostingControllerをUINavigationController内に埋め込もうとしましたが、これはNavigationViewとまったく同じ動作を提供します。 struct ContentView: View { var body: some View { UIKitNavigationView { VStack { NavigationLink(destination: Text("Detail")) { Text("SwiftUI") } }.navigationBarTitle("SwiftUI", displayMode: .inline) }.edgesIgnoringSafeArea(.top) } } struct UIKitNavigationView<Content: View>: UIViewControllerRepresentable { var content: () -> Content init(@ViewBuilder content: @escaping () -> …
9 ios  swift  swiftui 

2
CombineとSwiftUIを使用した非同期操作
CombineとSwiftUIを使用して非同期操作を処理する方法を理解しようとしています。 たとえば、HealthKitManagerヘルスストアの承認のリクエストを処理するクラスがあります。 final class HealthKitManager { enum Error: Swift.Error { case notAvailable case authorisationError(Swift.Error) } let healthStore = HKHealthStore() func getHealthKitData(for objects: Set<HKObjectType>, completion: @escaping (Result<Bool, Error>) -> Void) { guard HKHealthStore.isHealthDataAvailable() else { completion(.failure(.notAvailable)) return } self.healthStore.requestAuthorization(toShare: nil, read: objects) { completed, error in DispatchQueue.main.async { if let error …

2
削除されたコアデータオブジェクトへの参照を保持しているSwiftUIがクラッシュの原因
SwiftUIでコアデータを使用することは不可能であることがわかりました。コアデータをビューの監視対象オブジェクト変数に渡すと、ナビゲーションリンクビューはビューが消えた後もオブジェクトへの参照を保持するため、削除するとすぐにエラーメッセージなしで、アプリがクラッシュするコンテキストのオブジェクト。 コアデータオブジェクト変数をオプションとしてビューモデルにラップし、コンテキスト削除アクションの直後にオブジェクトをnilに設定してアプリが正常に動作することでこれを確認しましたが、コアデータオブジェクトが必要なため、これは解決策ではありません迅速なuiビューにバインドし、真実のソースになります。これはどのように機能すると想定されていますか?SwiftUIを使用してリモートで複雑なことを真剣に行うことはできないようです。 渡されたコアデータオブジェクトをオプションの@Stateに割り当てようとしましたが、これは機能しません。@Bindingはフェッチされたオブジェクトなので使用できません。また、swiftuiコントロールにはバインディングが必要なため、変数を使用できません。@ObservedObjectを使用することは意味がありますが、これはオプションにすることはできません。つまり、それに割り当てられたオブジェクトが削除されると、アプリがクラッシュします。これをnilに設定できないためです。 これがコアデータオブジェクトです。これはデフォルトで監視可能なオブジェクトです。 class Entry: NSManagedObject, Identifiable { @NSManaged public var date: Date } 以下は、コアデータエントリオブジェクトを別のビューに渡すビューです。 struct JournalView: View { @Environment(\.managedObjectContext) private var context @FetchRequest( entity: Entry.entity(), sortDescriptors: [], predicate: nil, animation: .default ) var entries: FetchedResults<Entry> var body: some View { NavigationView { List { ForEach(entries.indices) { index in …
8 ios  swift  swiftui 

1
SwiftUI Pickerの選択が変更されたときに関数を呼び出す方法はありますか?
selectedOptionの値が変更されたときに関数を呼び出したいのですが。TextFieldを編集する場合と同様に、SwiftUIでこれを行う方法はありますか? 具体的には、ユーザーがselectedOptionを変更したときに、選択したオプションを保存します。 これが私のピッカーです: struct BuilderPicker: View { let name: String let options: Array<String> @State var selectedOption = 0 var body: some View { HStack { Text(name) .font(.body) .padding(.leading, 10) Picker(selection: $selectedOption, label: Text(name)) { ForEach(0 ..< options.count) { Text(self.options[$0]).tag($0) } }.pickerStyle(SegmentedPickerStyle()) .padding(.trailing, 25) }.onTapGesture { self.selectedOption = self.selectedOption == 0 …

1
UITextView-SwiftUIのコンテンツに基づいてサイズを調整します
UITextViewのサイズをSwiftUIのコンテンツに依存させる方法を理解しようとしています。私UIViewRepresentableは次のようにUITextViewをラップしました: struct TextView: UIViewRepresentable { @Binding var showActionSheet: Bool func makeCoordinator() -> Coordinator { Coordinator(self) } func makeUIView(context: Context) -> UITextView { let uiTextView = UITextView() uiTextView.delegate = context.coordinator uiTextView.font = UIFont(name: "HelveticaNeue", size: 15) uiTextView.isScrollEnabled = true uiTextView.isEditable = true uiTextView.isUserInteractionEnabled = true uiTextView.backgroundColor = UIColor(white: 0.0, alpha: 0.05) …

2
SwiftUI .rotationEffect()のフレーミングとオフセット
.rotationEffect()をテキストに適用すると、期待どおりにテキストが回転しますが、フレームは変更されません。これは、HStackのVStackのように、回転されたビューを回転されていないビューとスタックするときに問題になり、それらがオーバーラップします。 最初に、rotationEffectはテキストのフレームを垂直に更新するだけだと思っていましたが、そうではありません。 私は手動でフレームサイズと(必要に応じてオフセットする)テキストを設定してみましたが、これは一種の動作ですが、テキストが表示される場所や大きさを推測および確認する必要があるため、このソリューションは好きではありませんフレームなど これは回転されたテキストがどのように行われるか、またはこれに対するよりエレガントな解決策はありますか? struct TextAloneView: View { var body: some View { VStack { Text("Horizontal text") Text("Vertical text").rotationEffect(.degrees(-90)) } } } 重複するテキスト
8 swift  swiftui 

3
Swiftuiリストの行セルは、ビューが表示された後にパディングを設定しました
テキストが1つだけの標準リストがあり、右側にナビゲーション用の矢印があります。しかし、リストがロードされてScreenに表示された後、リストはセルを適応させます。セルは左と右にパディングを追加すると思います。しかし、これは見栄えが良くないので、リストが遅れているように見えます! List { ForEach(0..<book.chapters) { index in NavigationLink(destination: ReadingView(book: self.book, chapter: index)){ Text("Kapitel \(index + 1)") } } } .navigationBarTitle(Text(book.long_name), displayMode: .inline)

3
SwiftUI AspectRatioがカメラからの画像に対して機能しない
これがSwiftUI固有の問題かどうかはわかりません。とにかく、UIViewControllerRepresentableProtocolを使用してSwiftUIビューに実装したUIImagePickerControllerがあります。 struct ContentView: View { @State var showCameraView = false @State var showImagePicker = false @State var UserImage = Image("user") var body: some View { VStack { UserImage .resizable() .frame(width: 200, height: 200) .scaledToFit() .background(Color.gray) .cornerRadius(200) .clipped() Button(action: {self.showImagePicker = true}) { Text("Choose from camera roll") } .padding(.top, 10) } …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.