คำถามติดแท็ก swiftui

SwiftUI เป็น Swift API ที่เปิดเผยของ Apple สำหรับการกำหนดส่วนต่อประสานผู้ใช้แบบกราฟิก ใช้แท็กนี้สำหรับคำถามเกี่ยวกับ SwiftUI ในทุกแพลตฟอร์ม

20
เพิ่มบรรทัดด้านล่างเพื่อดูใน SwiftUI / Swift / Objective-C / Xamarin
UITextFieldผมอยากจะให้ชายแดนที่ส่วนล่างเฉพาะใน แต่ฉันไม่รู้ว่าเราจะเก็บไว้ที่ด้านล่างได้อย่างไร คุณช่วยแนะนำฉันได้ไหม

5
เลือกไม่ใช้ UISceneDelegate / SwiftUI บน iOS
ฉันกำลังใช้ Xcode 11 Beta 5 ในแอปพลิเคชันของฉันมันทำงานได้ดีบน iOS 12 และต่ำกว่า อย่างไรก็ตามใน iOS 13 ดูเหมือนว่าจะใช้UISceneโดยค่าเริ่มต้น นี่ทำให้แอปของฉันไม่ทำอะไรเลย เมื่อแอปเปิดตัวเมื่อติดตั้งใหม่จะมีข้อกำหนดและเงื่อนไขที่ผู้ใช้ต้องยอมรับ หลังจากตกลงแล้วให้ไปที่หน้าจอโหลดซึ่งจะนำพวกเขาไปยังมุมมองหลัก ในภาพหน้าจอที่ฉันโพสต์มุมมองด้านหลังภาพปัจจุบันเบื้องหน้าคือหน้าจอการโหลดสแปลช เราจะพิจารณาเพิ่มการรองรับฉากหลายมุมมองตลอดทั้งแอปพลิเคชันเร็ว ๆ นี้ แต่ตอนนี้เรามีสิ่งที่มีลำดับความสำคัญสูงกว่าที่เราต้องดำเนินการ https://imgur.com/i0qLhAL "รองรับหลายหน้าต่าง" ถูกปิดใช้งานแล้วในการตั้งค่าทั่วไปของเป้าหมายของแอป นอกจากนี้ฉันได้ตั้งค่า Enable Multiple Windows เป็น NO ในไฟล์ info.plist จนถึงขณะนี้ไม่มีอะไรได้ผลจริงๆ โดยทั่วไปฉันต้องการเลือกไม่ / ปิดการใช้งานหลาย ๆ หน้าต่างและ UIScene / SwiftUI เพื่อกู้คืนพฤติกรรมดั้งเดิมใน iOS 10-12 เป็นไปได้ไหมใน iOS 13 หรือเราต้องอัปเดต? อัปเดต: นี่คือภาพหน้าจอของลำดับชั้นการแก้ไขข้อบกพร่องของมุมมอง …
129 swift  xcode  swiftui  ios13 



15
สร้าง VStack ให้เต็มความกว้างของหน้าจอใน SwiftUI
ให้รหัสนี้: 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: …
119 ios  swift  xcode  swiftui 

24
ย้าย TextField ขึ้นเมื่อแป้นพิมพ์ปรากฏใน SwiftUI
ฉันมีเจ็ดภายในหลักของฉัน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's bodyมันจะตั้งศูนย์โดยอัตโนมัติเสมอ มีแนวคิดบางอย่างที่ฉันขาดหายไปเกี่ยวกับระบบเลย์เอาต์ในSwiftUIและถ้าไม่มีฉันจะตั้งค่าคุณสมบัติการจัดแนวข้อความเป็นTextอย่างไร
97 ios  swift  swiftui 

12
ตัวบ่งชี้กิจกรรมใน SwiftUI
กำลังพยายามเพิ่มตัวบ่งชี้กิจกรรมแบบเต็มหน้าจอใน SwiftUI ฉันสามารถใช้.overlay(overlay: )ฟังก์ชันในViewโปรโตคอล ด้วยวิธีนี้ฉันสามารถให้ภาพซ้อนทับมุมมองใด ๆ แต่ฉันไม่สามารถหาสิ่งที่ iOS ของรูปแบบเริ่มต้นเทียบเท่าUIActivityIndicatorViewSwiftUI ฉันจะสร้างสปินเนอร์สไตล์เริ่มต้นด้วยได้SwiftUIอย่างไร หมายเหตุ:นี่ไม่เกี่ยวกับการเพิ่มตัวบ่งชี้กิจกรรมในกรอบงาน UIKit
97 swiftui 

20
วิธีซ่อนแป้นพิมพ์เมื่อใช้ SwiftUI
จะซ่อนkeyboardโดยใช้SwiftUIเคสด้านล่างได้อย่างไร? กรณีที่ 1 ฉันมีTextFieldและต้องการซ่อนkeyboardเมื่อผู้ใช้คลิกreturnปุ่ม กรณีที่ 2 ฉันมีTextFieldและจำเป็นต้องซ่อนkeyboardเมื่อผู้ใช้แตะข้างนอก ฉันจะทำสิ่งนี้ได้SwiftUIอย่างไร? บันทึก: UITextFieldฉันไม่ได้ถามคำถามเกี่ยวกับ ฉันต้องการที่จะทำโดยใช้SwifUI.TextField.

3
SwiftUI: วิธีใช้งาน init ที่กำหนดเองกับตัวแปร @Binding
ฉันกำลังทำงานกับหน้าจอการป้อนเงินและจำเป็นต้องใช้แบบกำหนดเอง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 } ... }
95 swift  swiftui 

11
ฉันจะสร้าง TextField แบบหลายบรรทัดใน SwiftUI ได้อย่างไร
ฉันพยายามสร้าง TextField หลายบรรทัดใน SwiftUI แต่ฉันไม่สามารถหาวิธีได้ นี่คือรหัสที่ฉันมีอยู่ในปัจจุบัน: 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 …
94 ios  swiftui 

2
อะไรเปิดใช้ DSL ของ SwiftUI
ดูเหมือนว่าSwiftUIเฟรมเวิร์กใหม่ของ Apple จะใช้ไวยากรณ์รูปแบบใหม่ที่สร้างทูเพิลได้อย่างมีประสิทธิภาพ แต่มีไวยากรณ์อื่น: 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 …
89 swift  swiftui 

4
NavigationLink ใช้งานได้เพียงครั้งเดียว
ฉันกำลังทำงานกับแอปพลิเคชันที่มีการเข้าสู่ระบบและหลังจากเข้าสู่ระบบมีหมวดหมู่ที่ระบุไว้ และภายใต้แต่ละหมวดหมู่มีบางรายการที่แสดงในแนวนอน สิ่งนี้เกิดขึ้นหลังจากการเข้าสู่ระบบหน้าหลักจะปรากฏขึ้นและทุกอย่างก็อยู่ในรายการที่ยอดเยี่ยม เมื่อคุณคลิกที่รายการมันจะไปที่หน้าจอรายละเอียด แต่เมื่อคุณพยายามที่จะกลับไปมันก็เกิดปัญหา ฉันพบโฟลว์นี้ทำไมแอป SwiftUI ของฉันจึงล้มเหลวเมื่อนำทางไปด้านหลังหลังจากวาง "NavigationLink" ใน "navigationBarItems`" ใน "NavigationView" แต่ฉันไม่สามารถแก้ปัญหาของฉันได้ เนื่องจากโครงการของฉันซับซ้อนฉันแค่ต้องการฝึกการนำทางใน swiftui และฉันได้สร้างโครงการใหม่ โดยวิธีการที่ฉันดาวน์โหลด xcode ล่าสุด 11.3 ฉันเขียนรหัสง่าย ๆ ดังนี้ NavigationView{ NavigationLink(destination: Test()) { Text("Show Detail View") } .navigationBarTitle("title1") และมุมมอง Test () มีดังนี้: import SwiftUI struct Test: View { var body: some View { Text("Hello, World!") …

9
เหตุใดแอป SwiftUI ของฉันจึงพังเมื่อนำทางด้านหลังหลังจากวาง "NavigationLink" ไว้ใน "navigationBarItems`" ใน "NavigationView"
ตัวอย่างที่ทำซ้ำได้น้อยที่สุด (Xcode 11.2 เบต้าทำงานได้ใน Xcode 11.1): struct Parent: View { var body: some View { NavigationView { Text("Hello World") .navigationBarItems( trailing: NavigationLink(destination: Child(), label: { Text("Next") }) ) } } } struct Child: View { @Environment(\.presentationMode) var presentation var body: some View { Text("Hello, World!") .navigationBarItems( leading: Button( action: { …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.