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

Swift เป็นภาษาการเขียนโปรแกรมสำหรับวัตถุประสงค์ทั่วไปที่ปลอดภัยรวดเร็วและมีการแสดงออกซึ่งพัฒนาโดย Apple Inc. สำหรับแพลตฟอร์มและ Linux Swift เป็นโอเพ่นซอร์ส ใช้แท็กสำหรับคำถามเกี่ยวกับคุณสมบัติภาษาหรือต้องการรหัสใน Swift เท่านั้น ใช้แท็ก [ios], [ipados], [macos], [watch-os], [tvos], [cocoa-touch] และ [cocoa] สำหรับคำถาม (ภาษาที่ไม่เชื่อเรื่องพระเจ้า) เกี่ยวกับแพลตฟอร์มหรือเฟรมเวิร์ก

11
การคืนข้อมูลจากการโทรแบบ async ในฟังก์ชัน Swift
ฉันได้สร้างคลาสยูทิลิตี้ในโครงการ Swift ของฉันที่จัดการคำขอ REST และการตอบกลับทั้งหมด ฉันได้สร้าง REST API อย่างง่ายเพื่อให้ฉันสามารถทดสอบโค้ดของฉันได้ ฉันได้สร้างเมธอดคลาสที่ต้องการส่งคืน NSArray แต่เนื่องจากการเรียก API เป็นแบบ async ฉันต้องส่งคืนจากเมธอดภายในการเรียก async ปัญหาคือ async คืนค่าเป็นโมฆะ ถ้าฉันทำสิ่งนี้ใน Node ฉันจะใช้สัญญา JS แต่ฉันไม่สามารถหาวิธีแก้ปัญหาที่ใช้ได้กับ Swift import Foundation class Bookshop { class func getGenres() -> NSArray { println("Hello inside getGenres") let urlPath = "http://creative.coventry.ac.uk/~bookshop/v1.1/index.php/genre/list" println(urlPath) let url: NSURL = NSURL(string: …
93 ios  rest  asynchronous  swift 

15
'การใช้ตัวระบุที่ไม่ได้รับการแก้ไข' ใน Swift
ดังนั้นฉันจึงสร้างแอปขึ้นมาและทุกอย่างก็ทำงานได้ดี แต่วันนี้ฉันสร้างคลาสใหม่เหมือนปกติและด้วยเหตุผลบางอย่างในคลาสนี้ฉันไม่สามารถเข้าถึงตัวแปร Public / Global จากคลาสอื่น ๆ ได้ ชั้นเรียนอื่น ๆ ทั้งหมดทำได้ แต่ตอนนี้เมื่อฉันพยายามสร้างชั้นเรียนใหม่ฉันทำไม่ได้ สิ่งนี้จะได้รับการแก้ไขอย่างไร? ฉันใช้ Swift และ Xcode 6 ชนชั้นแรงงาน: import UIKit import Foundation import Parse import CoreData var signedIn = true class ViewController: UIViewController { คลาสใหม่: import UIKit class NewClass: UIViewController { override func viewDidLoad() { super.viewDidLoad() signedIn = false …
93 ios  xcode  swift 

4
วิธีเพิ่มการดำเนินการกับคีย์ส่งคืน UITextField
ฉันมีปุ่มและช่องข้อความในมุมมองของฉัน เมื่อฉันคลิกที่ช่องข้อความแป้นพิมพ์จะปรากฏขึ้นและฉันสามารถเขียนลงในช่องข้อความได้และฉันยังสามารถปิดแป้นพิมพ์ได้โดยคลิกที่ปุ่มโดยเพิ่ม: [self.inputText resignFirstResponder]; ตอนนี้ฉันต้องการเปิดใช้งานปุ่มย้อนกลับของแป้นพิมพ์ เมื่อฉันจะกดแป้นพิมพ์แป้นพิมพ์จะหายไปและจะมีบางอย่างเกิดขึ้น ฉันจะทำเช่นนี้ได้อย่างไร?

3
แอปพลิเคชั่น Subclass UIA กับ Swift
ใน Objective C นั้นง่ายมากเพียงแค่อัปเดตไฟล์ main.m และเปลี่ยนพารามิเตอร์ UIApplicationMain () ก็เพียงพอแล้ว return UIApplicationMain(argc, argv, NSStringFromClass([CustomUIApplication class]), NSStringFromClass([AppDelegate class])); แต่อย่างรวดเร็วไม่มีไฟล์ main.m เนื่องจากคำแนะนำกล่าวว่า “ โค้ดที่เขียนในขอบเขตส่วนกลางถูกใช้เป็นจุดเริ่มต้นของโปรแกรมดังนั้นคุณไม่จำเป็นต้องมีฟังก์ชันหลัก” ดังนั้นวิธีการสมัคร UIA subclass อย่างรวดเร็ว ?? ข้อเสนอแนะใด ๆ ?
92 ios  cocoa-touch  swift 

21
ข้อมูลหลักตำแหน่งไฟล์ Sqlite
โดยปกติไฟล์เก็บ sqlite สำหรับแอปข้อมูลหลักจะอยู่ใน ไลบรารี> การสนับสนุนแอปพลิเคชัน> iPhone Simulator> 7.1 (หรือเวอร์ชันใดก็ตามที่คุณใช้)> แอปพลิเคชัน> (โฟลเดอร์ใดก็ตามที่มีแอปของคุณ)> เอกสาร แต่ฉันไม่พบใน IOS 8 ฉันคิดว่าพวกเขาจะเพิ่มโฟลเดอร์ 8.0 ภายในโฟลเดอร์ iPhone Simulator แต่ไม่มีอยู่ มีใครสามารถค้นหาได้หรือไม่

6
ฉันจะเปลี่ยนการแสดงข้อความที่แสดงสำหรับประเภทใน Swift ได้อย่างไร
ฉันจะแก้ไขเอาต์พุตข้อความที่แสดงในการแก้ไขสตริงได้อย่างไร Printableโปรโตคอลลักษณะที่เห็นได้ชัดมากที่สุด แต่ก็ไม่สนใจทั้งใน String แก้ไขและเมื่อพิมพ์ตัวอย่างเช่น: struct Point : Printable { var x = 0 var y = 0 var description : String { return "(\(x), \(y))" } func toString() -> String { return description } } ในทำนองเดียวกันการtoString()ประชุมก็ไม่มีผลเช่นกัน: var p = Point(x: 10, y: 20) println(p) // V11lldb_expr_05Point (has 2 children) …
92 swift 

16
การสร้างตัวเลขสุ่มด้วย Swift
ฉันต้องการสร้างตัวเลขสุ่ม ดูเหมือนว่าarc4randomฟังก์ชันจะไม่มีอยู่อีกต่อไปเช่นเดียวกับarc4random_uniformฟังก์ชัน ตัวเลือกที่ฉันมีอยู่arc4random_stir(), และarc4random_buf(UnsafeMutablePointer<Void>, Int) arc4random_addrandom(UnsafeMutablePointer<UInt8>, Int32) ฉันไม่พบเอกสารใด ๆ ในฟังก์ชันและไม่มีความคิดเห็นในไฟล์ส่วนหัวที่ให้คำแนะนำ
92 swift  arc4random 

4
“ ข้อผิดพลาดร้ายแรง: อาร์เรย์ไม่สามารถเชื่อมโยงกับ Objective-C ได้” - ทำไมคุณถึงลองใช้ Swift?
ฉันได้ประกาศโปรโตคอล Swift: protocol Option { var name: String { get } } ฉันประกาศการใช้โปรโตคอลนี้หลายครั้ง - บางคลาสบางอัน ฉันมีตัวควบคุมมุมมองพร้อมคุณสมบัติที่ประกาศดังนี้: var options: [Option] = [] เมื่อฉันพยายามตั้งค่าคุณสมบัตินี้เป็นอาร์เรย์ของวัตถุที่ใช้Optionโปรโตคอลใน VC อื่นprepareForSegueฉันได้รับข้อผิดพลาดรันไทม์: fatal error: array cannot be bridged from Objective-C ทำไมถึงไม่ทำงาน คอมไพเลอร์มีข้อมูลทั้งหมดที่ต้องการและฉันไม่เข้าใจว่า Objective-C เกี่ยวข้องกับอะไรเลย - โปรเจ็กต์ของฉันมีเฉพาะไฟล์ Swift เท่านั้นและอาร์เรย์เหล่านี้ไม่ได้เข้ามาหรือออกจากเมธอดกรอบใด ๆ ที่จะ NSArrayเลี่ยงพวกเขาจะถูกเชื่อมไป

8
Swift - จัดเรียงอาร์เรย์ของวัตถุที่มีหลายเกณฑ์
ฉันมีอาร์เรย์ของContactวัตถุ: var contacts:[Contact] = [Contact]() ติดต่อชั้นเรียน: Class Contact:NSOBject { var firstName:String! var lastName:String! } และฉันต้องการที่จะเรียงลำดับอาร์เรย์ว่าด้วยการlastNameแล้วโดยในกรณีที่รายชื่อบางส่วนได้เช่นเดียวกันfirstNamelastName ฉันสามารถจัดเรียงตามหนึ่งในเกณฑ์เหล่านั้น แต่ไม่ใช่ทั้งสองอย่าง contacts.sortInPlace({$0.lastName < $1.lastName}) ฉันจะเพิ่มเกณฑ์เพิ่มเติมเพื่อจัดเรียงอาร์เรย์นี้ได้อย่างไร
92 swift  sorting 

7
ไม่สามารถเชี่ยวชาญฟังก์ชันทั่วไปได้อย่างชัดเจน
ฉันมีปัญหากับรหัสต่อไปนี้: func generic1<T>(name : String){ } func generic2<T>(name : String){ generic1<T>(name) } generic1 (ชื่อ)ผลการรวบรวมข้อผิดพลาด "ไม่สามารถมีความเชี่ยวชาญอย่างชัดเจนฟังก์ชั่นทั่วไป" มีวิธีใดบ้างที่จะหลีกเลี่ยงข้อผิดพลาดนี้ ฉันไม่สามารถเปลี่ยนลายเซ็นของฟังก์ชัน generic1 ได้ดังนั้นจึงควรเป็น (String) -> Void
92 generics  swift 

4
AnyObject และ Any ใน Swift
ฉันไม่เข้าใจว่าเมื่อใดควรใช้ AnyObject และเมื่อใดควรใช้ Any ใน Swift ในกรณีของฉันฉันมีพจนานุกรม [สตริง: ???] ??? : สามารถเป็น Int, Double, Float, String, Array, Dictionary ใครช่วยอธิบายความแตกต่างระหว่าง Any และ AnyObject กับสิ่งที่ควรใช้ในกรณีของฉัน Alak

8
ไม่สามารถนำเข้าโมดูลที่คอมไพล์ด้วย Swift 4.0 ใน Swift 4.0.1
อย่างไรก็ตามฉันได้คอมไพล์กรอบงานใหม่โดยใช้ Xcode เดียวกันและยังคงให้ข้อผิดพลาดนี้แก่ฉัน Base SDK iOS 11.1 สำหรับทั้งคู่ เวอร์ชันภาษา Swift Swift 4.0 สำหรับทั้งคู่ ไม่ใช้ Pods / Carthage ฉันหวังว่าจะมีคนรู้
92 ios  swift  xcode  xcode9  swift4 

15
การรับข้อมูลเวอร์ชันและการสร้างด้วย Swift
ฉันกำลังพยายามเข้าถึง Main NSBundle เพื่อดึงข้อมูล Version และ Build สิ่งนี้คือฉันต้องการลองอย่างรวดเร็วฉันรู้วิธีดึงข้อมูลใน Objective-C ด้วยBuild.text = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"];. แต่ฉันไม่รู้ว่าจะเริ่มต้นด้วยความรวดเร็วตรงไหนฉันได้พยายามเขียนมันลงในไวยากรณ์ใหม่โดยไม่มีประโยชน์
92 ios  swift 

16
มีวิธีพิมพ์พจนานุกรม Swift สวย ๆ ลงคอนโซลหรือไม่?
NSDictionary *dictionary = @{@"A" : @"alfa", @"B" : @"bravo", @"C" : @"charlie", @"D" : @"delta", @"E" : @"echo", @"F" : @"foxtrot"}; NSLog(@"%@", dictionary.description); พิมพ์สิ่งต่อไปนี้บนคอนโซล: { A = alfa; B = bravo; C = charlie; D = delta; E = echo; F = foxtrot; } let dictionary: [String : String] = …
92 ios  swift  xcode 


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