小编Sor*_*ica的帖子

如何消除SwiftUI Form中Section上方的空格?

我想消除第Section一个上方的空间Form

在此处输入图片说明

 var body: some View {
        VStack {
            Text("Text 1")
            Form {
                Section {
                    Text("Text 2")
                }
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

我试图将 Section 的 header 的 frame 设置为 0,但它不起作用

ios swift swiftui

14
推荐指数
1
解决办法
6525
查看次数

如何检测 TextField 何时在 iOS 的 SwiftUI 中失去焦点?

TextField("Name", text: $name)
Run Code Online (Sandbox Code Playgroud)

我找到了这个方法

func focusable(_ isFocusable: Bool = true, onFocusChange: @escaping (Bool) -> Void = { _ in }) -> some View
Run Code Online (Sandbox Code Playgroud)

但它仅适用于 MacOS,我怎么能为 iOS 做类似的事情?

ios swift swiftui

12
推荐指数
2
解决办法
8648
查看次数

如何在 SwiftUI 中全屏显示视图?

我努力登录view,现在我想展示view登录后,但我不希望用户有可能返回登录view。在UIkit我使用的present(),但似乎在SwiftUI presentation(_ modal: Modal?)view不走整个屏幕。Navigation也不是一个选项。

谢谢!

view uikit ios swiftui

11
推荐指数
3
解决办法
8272
查看次数

SwiftUI 表单中的部分转换

Section转型Form总是左右,我想将其更改为从右向左在某些情况下,我尝试.transition.move修改器,但它不会有效果。

struct ContentView: View {
    
    @State var visible = true

    var body: some View {
        
        Form {
            Button("visible") {
                self.visible.toggle()
            }
            visible ? Section {
                Text("Section 1")
                Text("Section 1")
            }.transition(.move(edge: .leading)) : nil
            !visible ? Section {
                Text("Section 2")
                Text("Section 2")
            }.transition(.move(edge: .trailing)) : nil
            Section {
                Text("Section 3")
                Text("Section 3")
            } // Section 3 should not be animated
        }.animation(.linear(duration: 0.5))
        
    }
}
Run Code Online (Sandbox Code Playgroud)

animation ios swift swiftui

11
推荐指数
1
解决办法
349
查看次数

如何使用 SwiftUI 观察 TextField 值并结合?

每次 atextField的值更改时,我都尝试执行一个操作。

@Published var value: String = ""

var body: some View {            
     $value.sink { (val) in
        print(val)
     }
     return TextField($value)       
}
Run Code Online (Sandbox Code Playgroud)

但我得到以下错误。

无法将“已发布”类型的值转换为预期的参数类型“绑定”

ios swiftui combine

10
推荐指数
3
解决办法
8985
查看次数

iPad 弹出窗口中的 NavigationView 在 SwiftUI 中无法正常工作

我有以下代码在点击按钮时显示弹出窗口:

struct ContentView: View {

    @State private var show = false

    var body: some View {

        Button("Open") {
            self.show.toggle()
        }.popover(isPresented: $show, content: {
//            NavigationView {
                ScrollView {
                    ForEach(0...10, id: \.self) {_ in
                        Text("Test popover ...")
                    }.padding()
                }
//            }
        })

    }
}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

如果我NavigationView在 popover 的内容中添加一个,那么我会得到这个:

在此处输入图片说明

知道为什么会这样吗?

如果我为内容设置了一个固定的框架,它工作正常,但我不想这样做,因为我希望弹出框根据其内容调整大小。

ipad ios swiftui

9
推荐指数
2
解决办法
929
查看次数

IOS 13 上的后台任务(BGTaskScheduler)

我将 BGTaskScheduler 用于后台任务,如下所述:https : //developer.apple.com/documentation/backgroundtasks/bgtaskscheduler

我的问题是:在设备重启后还是在我手动终止应用程序后,此计划任务是否也能工作?如果没有,是否还有其他选择?

ios swift xcode11

8
推荐指数
1
解决办法
2676
查看次数

How to navigate to another view in NavigationView without NavigationButton in SwiftUI?

As the questions says I want to navigate to another view without NavigationButton, something like "pushView" and "popView" in UIkit

ios swiftui

7
推荐指数
1
解决办法
2730
查看次数

在SwiftUI中使用NavigationLink导航时如何隐藏TabBar?

我有一个带有2个标签的TabView,每个标签都包含一个NavigationView。TabBar导航到其他视图时,我需要隐藏。一种解决方案是将TabView一个NavigationView 的内部放置,但是我必须为每个NavigationView设置不同的属性。

TabView(selection: $selectedTab, content: {
            NavigationView {
                VStack {
                    NavigationLink(destination: Text("SecondView Tab1")) {
                        Text("Click")
                    }
                }
            }.tabItem {
                Text("ONE")
            }.tag(0)

            NavigationView {
                VStack {
                    NavigationLink(destination: Text("SecondView Tab2")) {
                        Text("Click")
                    }
                }
            }.tabItem {
                Text("TWO")
            }.tag(1)

        })
Run Code Online (Sandbox Code Playgroud)

PS我正在使用Xcode 11 Beta 5

ios swiftui

7
推荐指数
2
解决办法
788
查看次数

在SwiftUI中继承ObservableObject时不会触发视图刷新

ContentView2model.value更改时不刷新视图,如果直接Model符合ObservableObject而不是继承SuperModel则可以正常工作

class SuperModel: ObservableObject {

}

class Model: SuperModel {
    @Published var value = ""
}

struct ContentView2: View {

    @ObservedObject var model = Model()

    var body: some View {
        VStack {
            Text(model.value)
            Button("change value") {
                self.model.value = "\(Int.random(in: 1...10))"
            }
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

ios swift swiftui combine

5
推荐指数
1
解决办法
644
查看次数

标签 统计

ios ×10

swiftui ×9

swift ×5

combine ×2

animation ×1

ipad ×1

uikit ×1

view ×1

xcode11 ×1