Questions tagged «swiftui»

SwiftUI是Apple的用于定义图形用户界面的声明性Swift API。在任何平台上使用此标签来查询有关SwiftUI的问题。




15
在SwiftUI中使VStack充满屏幕的宽度
给定此代码: import SwiftUI struct ContentView : View { var body: some View { VStack(alignment: .leading) { Text("Title") .font(.title) Text("Content") .lineLimit(nil) .font(.body) Spacer() } .background(Color.red) } } #if DEBUG struct ContentView_Previews : PreviewProvider { static var previews: some View { ContentView() } } #endif 导致这种交互: VStack即使标签/文本组件不需要整个宽度,也如何填充屏幕的宽度? 我发现的一个技巧是在结构中插入一个空 HStack,如下所示: VStack(alignment: .leading) { …
119 ios  swift  xcode  swiftui 

14
如何使用SwiftUI调整图片大小?
我在Assets.xcassets中拥有很大的形象。如何使用SwiftUI调整图片大小以缩小图片? 我试图设置框架,但不起作用: Image(room.thumbnailImage) .frame(width: 32.0, height: 32.0)
107 ios  swift  swiftui 

5
Xcode 11-在iOS 13上退出UISceneDelegate / SwiftUI
我当前正在使用Xcode 11 Beta5。在我的应用程序中,它可以在iOS 12及更低版本上正常运行。但是,在iOS 13上,默认情况下看起来像在使用UIScene。这导致我的应用无法执行任何操作。 当应用程序以全新安装方式启动时,用户必须接受条款和条件。同意后,他们进入加载屏幕,然后将其定向到主视图。在我发布的屏幕截图中,当前当前前景背后的视图是启动加载屏幕。 我们将很快考虑在整个应用程序中添加多视图场景支持,但是现在我们需要处理更高优先级的内容。 https://imgur.com/i0qLhAL 该应用程序目标的“常规”设置中的“支持多个窗口”已被禁用。另外,我在info.plist文件中将“启用多个Windows”设置为“否”。 到目前为止,什么都没有真正起作用。基本上我想选择退出/禁用多个窗口和UIScene / SwiftUI以恢复iOS 10-12中的原始行为。这可能在iOS 13中还是我们必须对其进行更新? 更新: 这是视图调试层次结构的屏幕截图。左侧是iOS 12,右侧是iOS13。没有在Info.plist或场景代理类或方法中添加任何内容,为什么会有所不同?几乎只是在Xcode 11上的现有生产就绪代码中运行了它。 https://imgur.com/C3aLsDo
106 swift  xcode  swiftui  ios13 

3
SwiftUI:如何使用@Binding变量实现自定义init
我正在资金输入屏幕上工作,需要实现一个自定义项,init以便根据已初始化的金额设置状态变量。 我以为这可以用,但是出现编译器错误: Cannot assign value of type 'Binding<Double>' to type 'Double' struct AmountView : View { @Binding var amount: Double @State var includeDecimal = false init(amount: Binding<Double>) { self.amount = amount self.includeDecimal = round(amount)-amount > 0 } ... }
102 swift  swiftui 

24
当键盘出现在SwiftUI中时,将TextField向上移动
TextField我的主箱里有七个ContentView。当用户打开键盘时,其中一些TextField隐藏在键盘框架下。所以TextField当键盘出现时,我想分别向上移动。 我使用以下代码TextField在屏幕上添加。 struct ContentView : View { @State var textfieldText: String = "" var body: some View { VStack { TextField($textfieldText, placeholder: Text("TextField1")) TextField($textfieldText, placeholder: Text("TextField2")) TextField($textfieldText, placeholder: Text("TextField3")) TextField($textfieldText, placeholder: Text("TextField4")) TextField($textfieldText, placeholder: Text("TextField5")) TextField($textfieldText, placeholder: Text("TextField6")) TextField($textfieldText, placeholder: Text("TextField6")) TextField($textfieldText, placeholder: Text("TextField7")) } } } 输出:
100 ios  swift  swiftui 

9
SwiftUI文本对齐
在Text视图的许多属性中,我找不到与文本对齐有关的任何内容。我在一个演示中看到它可以自动处理RTL,并且在使用View放置东西时body,它总是自动居中。 关于布局系统,我是否缺少一些概念,SwiftUI如果没有,如何将文本对齐属性设置为Text?
90 ios  swift  swiftui 

9
SwiftUI中的活动指示器
尝试在SwiftUI中添加全屏活动指示器。 我可以.overlay(overlay: )在View协议中使用功能。 这样,我可以进行任何视图叠加,但是找不到的UIActivityIndicatorView等效于iOS默认样式SwiftUI。 如何使用默认样式微调器SwiftUI? 注意:这与在UIKit框架中添加活动指示器无关。
90 swiftui 

2
什么使SwiftUI的DSL成为可能?
苹果的新SwiftUI框架似乎使用了一种新型语法,可以有效地构建元组,但又具有另一种语法: var body: some View { VStack(alignment: .leading) { Text("Hello, World") // No comma, no separator ?! Text("Hello World!") } } 尝试解决这种语法的实际含义时,我发现VStack这里使用的初始化程序将类型的闭包() -> Content 作为第二个参数,其中Content的通用参数View是通过闭包推断出来的。找出什么类型Content推断的,我对代码进行了一些更改,并保持其功能: var body: some View { let test = VStack(alignment: .leading) { Text("Hello, World") Text("Hello World!") } return test } 以此,test表明自己是类型VStack<TupleView<(Text, Text)>>,即Content类型TupleView<Text, Text>。抬头TupleView,我发现它是一个源自SwiftUI自身的包装器类型,只能通过传递应该包装的元组来初始化。 题 现在,我想知道Text这个示例中的两个实例如何转换为TupleView<(Text, Text)>。这被黑入SwiftUI,因此无效的常规Swift语法吗? …
88 swift  swiftui 

20
使用SwiftUI时如何隐藏键盘?
在以下情况下如何隐藏keyboard使用SwiftUI? 情况1 我有TextField,我需要keyboard在用户单击return按钮时隐藏。 情况二 我有TextField,keyboard当用户在外面轻按时,我需要隐藏它。 我该如何使用SwiftUI呢? 注意: 我还没有问有关的问题UITextField。我想用做SwifUI.TextField。

10
如何在SwiftUI中创建多行TextField?
我一直在尝试在SwiftUI中创建多行TextField,但是我不知道怎么做。 这是我目前拥有的代码: struct EditorTextView : View { @Binding var text: String var body: some View { TextField($text) .lineLimit(4) .multilineTextAlignment(.leading) .frame(minWidth: 100, maxWidth: 200, minHeight: 100, maxHeight: .infinity, alignment: .topLeading) } } #if DEBUG let sampleText = """ Very long line 1 Very long line 2 Very long line 3 Very …
85 ios  swiftui 

15
如何在SwiftUI NavigiationView中删除默认导航栏空间
我是SwiftUI的新手(像大多数人一样),试图弄清楚如何删除我嵌入在NavigationView中的List上方的空白。 在此图像中,您可以看到列表上方有一些空白 我要完成的是 我试过使用 .navigationBarHidden(true) 但这并没有进行任何明显的更改。 我目前正在这样设置我的navigationView NavigationView { FileBrowserView(jsonFromCall: URLRetrieve(URLtoFetch: applicationDelegate.apiURL)) .navigationBarHidden(true) } 其中FileBrowserView是具有列表和像这样定义的单元格的视图 List { Section(header: Text("Root")){ FileCell(name: "Test", fileType: "JPG",fileDesc: "Test number 1") FileCell(name: "Test 2", fileType: "txt",fileDesc: "Test number 2") FileCell(name: "test3", fileType: "fasta", fileDesc: "") } } 我确实要注意,这里的最终目标是您将能够单击这些单元格来更深入地导航到文件树,因此在更深层的导航栏中应该显示“返回”按钮,但是我不希望在在我的初始视图中排名最高。

11
在现有的UIKit应用程序中包含SwiftUI视图
是否可以通过SwiftUI与现有UIKit应用程序并排构建视图? 我有一个用Objective-C编写的现有应用程序。我已经开始迁移到Swift5。我想知道是否可以将SwiftUI与现有的UIKit .xib视图一起使用。 也就是说,我希望在同一应用程序中使用SwiftUI构建一些视图,并使用UIKit构建一些其他视图。当然不要混合两者。 SomeObjCSwiftProject/ SwiftUIViewController.swift SwiftUIView.xib UIKitViewController.swift UIKitView.xib 彼此一起工作
81 swift  swiftui 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.