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

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

20
จะซ่อนแป้นพิมพ์อย่างรวดเร็วในการกดปุ่มย้อนกลับได้อย่างไร
ฉันกำลังใช้UITextfiedในขณะที่คลิกที่แป้นพิมพ์แบบข้อความปรากฏขึ้น แต่เมื่อฉันกดreturnปุ่มแป้นพิมพ์จะไม่หายไป ฉันใช้รหัสต่อไปนี้: func textFieldShouldReturn(textField: UITextField!) -> Bool // called when 'return' key pressed. return NO to ignore. { return true; } วิธีการที่ลาออกก่อนหน้าการตอบกลับไม่ได้อยู่ในฟังก์ชัน
214 ios  swift  uitextfield 

19
จะยกเลิก ViewController ใน Swift ได้อย่างไร
ฉันพยายามยกเลิก ViewController อย่างรวดเร็วด้วยการโทรdismissViewControllerหาIBAction @IBAction func cancel(sender: AnyObject) { self.dismissViewControllerAnimated(false, completion: nil) println("cancel") } @IBAction func done(sender: AnyObject) { self.dismissViewControllerAnimated(false, completion: nil) println("done") } ฉันเห็นข้อความ println ในเอาต์พุตคอนโซล แต่ ViewController ไม่เคยถูกไล่ออก มีปัญหาอะไร

24
จะหยุดการเคลื่อนไหวของ UIButton ที่ไม่ต้องการในการเปลี่ยนชื่อได้อย่างไร?
ใน iOS 7 ชื่อ UIButton ของฉันเคลื่อนไหวในและนอกเวลาผิด - สาย ปัญหานี้ไม่ปรากฏบน iOS 6 ฉันแค่ใช้: [self setTitle:text forState:UIControlStateNormal]; ฉันต้องการสิ่งนี้เกิดขึ้นทันทีและไม่มีเฟรมว่างเปล่า การกะพริบนี้เบี่ยงเบนความสนใจเป็นพิเศษและดึงความสนใจออกไปจากภาพเคลื่อนไหวอื่น ๆ

15
โดยทางโปรแกรมกลับไปยัง ViewController ก่อนหน้าใน Swift
ฉันส่งผู้ใช้ไปยังหน้าเว็บด้วยการคลิกปุ่ม หน้านี้เป็นUITableViewController UITableViewController ตอนนี้หากผู้ใช้แตะที่เซลล์ฉันต้องการผลักเขากลับไปที่หน้าก่อนหน้า ฉันคิดถึงสิ่งที่ชอบ self.performSegue("back")....แต่ดูเหมือนจะเป็นความคิดที่ไม่ดี วิธีที่ถูกต้องในการทำคืออะไร?
211 ios  swift  segue 

22
เหตุใดเวลารวบรวมของ Swift จึงช้ามาก
ฉันใช้ Xcode 6 Beta 6 นี่เป็นบางสิ่งบางอย่างที่ดักฟังฉันมาระยะหนึ่งแล้ว แต่มันมาถึงจุดที่ใช้งานได้แทบจะไม่แล้วในตอนนี้ โครงการของฉันเริ่มที่จะมีดีขนาด 65 ไฟล์อย่างรวดเร็วและไม่กี่สะพานไฟล์ Objective-C (ซึ่งจริงๆไม่ได้เป็นสาเหตุของปัญหา) ดูเหมือนว่าการดัดแปลงเล็กน้อยสำหรับไฟล์ Swift ใด ๆ (เช่นการเพิ่มพื้นที่สีขาวแบบง่าย ๆ ในคลาสที่แทบจะไม่เคยใช้ในแอพ) จะทำให้ไฟล์ Swift ทั้งหมดสำหรับเป้าหมายที่ระบุได้รับการคอมไพล์ใหม่ หลังจากการตรวจสอบที่ลึกกว่านี้ฉันพบว่าสิ่งที่ใช้เวลาในการรวบรวม 100% นั้นเป็นCompileSwiftขั้นตอนที่ Xcode ใช้swiftcคำสั่งในไฟล์ Swift ทั้งหมดของเป้าหมายของคุณ ฉันทำการตรวจสอบเพิ่มเติมและถ้าฉันเก็บตัวแทนแอพไว้ด้วยคอนโทรลเลอร์เริ่มต้นเท่านั้นการคอมไพล์นั้นเร็วมาก แต่เมื่อฉันเพิ่มไฟล์โครงการของฉันมากขึ้นเรื่อย ๆ เวลาในการคอมไพล์ก็เริ่มช้าลงจริง ๆ ขณะนี้มีไฟล์ต้นฉบับเพียง 65 ไฟล์จึงใช้เวลารวบรวมประมาณ 8/10 วินาทีในแต่ละครั้ง ไม่เร็วมากเลย ฉันไม่ได้เห็นโพสต์พูดคุยเกี่ยวกับปัญหานี้ยกเว้นคนนี้แต่มันเป็นรุ่นเก่า Xcode 6. ดังนั้นฉันสงสัยว่าถ้าผมเป็นเพียงหนึ่งในกรณีที่ UPDATE ฉันได้ตรวจสอบโครงการ Swift สองสามรายการบนGitHubเช่นAlamofire , EulerและCryptoSwiftแต่ไม่มีโครงการใดที่มีไฟล์ …

6
ข้อผิดพลาดของคอมไพเลอร์: วิธีที่ตัวเลือก Objective-C ขัดแย้งกับการประกาศก่อนหน้าด้วยตัวเลือก Objective-C เดียวกัน
ฉันเริ่มเรียนรู้ Swift และติดตามการบรรยายวิดีโอของมหาวิทยาลัยสแตนฟอร์ดที่ดีมากบน YouTube นี่คือลิงค์หากคุณสนใจหรือช่วยได้ (แม้ว่าไม่จำเป็นต้องเข้าใจปัญหาของฉัน): การพัฒนาแอพ iOS 8 ด้วย Swift - 2. Xcode และ Swift, MVC เพิ่มเติม ในขณะที่ติดตามการบรรยายฉันถึงจุดที่ (เท่าที่ฉันจะบอกได้) รหัสของฉันเหมือนกับรหัสในวิดีโอ แต่ในระบบของฉันฉันได้รับข้อผิดพลาดของคอมไพเลอร์ หลังจากการลองผิดลองถูกจำนวนมากฉันได้จัดการลดรหัสของฉันให้เหลือสองตัวอย่างซึ่งหนึ่งในนั้นสร้างข้อผิดพลาดอื่น ๆ หรือที่ไม่ได้ แต่ฉันไม่รู้ว่าอะไรเป็นสาเหตุของข้อผิดพลาดหรือวิธีการแก้ไข รหัสที่สร้างข้อผิดพลาดคือ: import UIKit class BugViewController: UIViewController { func perform(operation: (Double) -> Double) { } func perform(operation: (Double, Double) -> Double) { } } สิ่งนี้สร้างข้อผิดพลาดคอมไพเลอร์ต่อไปนี้: …
209 swift 


25
วิธีตั้งค่าข้อความปุ่มย้อนกลับใน Swift
คุณจะลบข้อความปุ่มย้อนกลับได้อย่างไร ปุ่มย้อนกลับปัจจุบัน: <ย้อนกลับ ปุ่มย้อนกลับที่ต้องการ: <AnythingElse สิ่งเหล่านี้ไม่ได้ผล: self.navigationItem.backBarButtonItem?.title = "Back" self.backItem?.title = "" self.navigationController?.navigationBar.backItem?.title = "" self.navigationItem.backBarButtonItem?.title = "" self.navigationController?.navigationItem.backBarButtonItem?.title="Back" self.navigationController?.navigationBar.backItem?.title = "" self.navigationController?.navigationItem.backBarButtonItem?.title
207 ios  objective-c  swift 

15
วิธีการเปลี่ยนแบบอักษรของ UIButton ด้วย Swift
ฉันกำลังพยายามเปลี่ยนแบบอักษรของ UIButton โดยใช้ Swift ... myButton.font = UIFont(name: "...", 10) อย่างไรก็ตาม.fontเลิกใช้แล้วและฉันไม่แน่ใจว่าจะเปลี่ยนแบบอักษรอื่นได้อย่างไร ข้อเสนอแนะใด ๆ
207 ios  uibutton  swift  uifont 

4
Swift: ประเภทการทดสอบคลาสในคำสั่ง switch
ใน Swift คุณสามารถตรวจสอบประเภทคลาสของวัตถุโดยใช้ 'is' ฉันจะรวมสิ่งนี้ลงในบล็อค 'สวิตช์' ได้อย่างไร ฉันคิดว่ามันเป็นไปไม่ได้ดังนั้นฉันจึงสงสัยว่าอะไรคือวิธีที่ดีที่สุดในรอบนี้

19
รับความแตกต่างระหว่างสอง NSDates ใน (เดือน / วัน / ชั่วโมง / นาที / วินาที)
ฉันพยายามรับความแตกต่างระหว่างวันที่ปัจจุบันNSDate()และวันที่จากการtime();โทรPHP ตัวอย่างเช่น: NSDate(timeIntervalSinceReferenceDate: 1417147270). ฉันจะไปเกี่ยวกับการรับความแตกต่างในเวลาระหว่างสองวันได้อย่างไร ฉันต้องการมีฟังก์ชั่นที่เปรียบเทียบวันที่สองวันif(seconds > 60)จากนั้นจะคืนค่านาทีจำนวนif(minutes > 60)ชั่วโมงif(hours > 24)คืนและจำนวนวันคืนเป็นต้น ฉันจะไปเกี่ยวกับเรื่องนี้ได้อย่างไร แก้ไข: คำตอบที่ยอมรับในปัจจุบันทำในสิ่งที่ฉันอยากจะทำ ฉันขอแนะนำให้ใช้งานง่ายสำหรับการรับช่วงเวลาระหว่างวันที่สองวันในรูปแบบที่time()ฟังก์ชันPHP ใช้ หากคุณไม่คุ้นเคยกับ PHP เป็นพิเศษนั่นคือเวลาในไม่กี่วินาทีตั้งแต่วันที่ 1 มกราคม 1970 นี่เป็นประโยชน์สำหรับแบ็กเอนด์ใน PHP หากบางทีคุณกำลังใช้แบ็กเอนด์อย่าง NodeJS คุณอาจต้องพิจารณาตัวเลือกอื่น ๆ ที่คุณจะพบด้านล่าง
206 ios  swift  macos  nsdate 


27
การอ่านในไฟล์ JSON โดยใช้ Swift
ฉันกำลังดิ้นรนกับการพยายามอ่านไฟล์ JSON ใน Swift เพื่อให้ฉันสามารถเล่นกับมันได้ ฉันใช้เวลาส่วนที่ดีที่สุดในการค้นหาใหม่ 2 วันและลองใช้วิธีการที่แตกต่างกัน แต่ก็ยังไม่มีโชคดังนั้นฉันได้ลงทะเบียนกับ StackOverFlow เพื่อดูว่าใครสามารถชี้ให้ฉันไปในทิศทางที่ถูกต้อง ..... ไฟล์ JSON ของฉันชื่อ test.json และมีสิ่งต่อไปนี้: { "person":[ { "name": "Bob", "age": "16", "employed": "No" }, { "name": "Vinny", "age": "56", "employed": "Yes" } ] } ไฟล์ถูกเก็บไว้ในเอกสารโดยตรงและฉันเข้าถึงได้โดยใช้รหัสต่อไปนี้: let file = "test.json" let dirs : String[] = NSSearchPathForDirectoriesInDomains( NSSearchpathDirectory.DocumentDirectory, NSSearchPathDomainMask.AllDomainMask, …

20
ข้อผิดพลาดคอมไพเลอร์ Swift:“ ส่วนหัวที่ไม่ใช่แบบแยกส่วนภายในโมดูลกรอบงาน”
ตอนนี้ฉันต้องการย้ายกรอบงาน ObjC ของฉันไปที่ Swift และฉันได้รับข้อผิดพลาดดังต่อไปนี้: include of non-modular header inside framework module 'SOGraphDB' การอ้างอิงคือไฟล์ส่วนหัวซึ่งเพิ่งกำหนดโปรโตคอลและฉันใช้ไฟล์ส่วนหัวนี้ในบางคลาสเพื่อใช้โปรโตคอลนี้ ดูเหมือนว่าจะเกี่ยวข้องกับคุณสมบัติของโมดูล แต่ในขณะนี้ยังไม่ชัดเจนว่าจะแก้ไขอย่างไรคุณรู้วิธีแก้ปัญหาหรือไม่? UPDATE: นี่เป็นข้อผิดพลาดของคอมไพเลอร์ Swift อัปเดต 2: การแก้ไขอย่างรวดเร็ว (แต่ไม่ได้แก้ไขสาเหตุของปัญหา) คือการตั้งค่าการตั้งค่าต่อไปนี้เป็นใช่: CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = ใช่

27
ดำเนินการแอ็คชันเมื่อกดปุ่ม back bar ของ UINavigationController
ฉันต้องดำเนินการกระทำ (การล้างอาร์เรย์) เมื่อกดปุ่มย้อนกลับของ a UINavigationControllerในขณะที่ปุ่มยังคงทำให้ก่อนหน้านี้ViewControllerบนสแต็กปรากฏ ฉันจะทำสิ่งนี้ให้สำเร็จโดยใช้สวิฟท์ได้อย่างไร

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