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

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

8
วิธีเริ่มต้น / สร้างอินสแตนซ์ของคลาส UIView แบบกำหนดเองด้วยไฟล์ XIB ใน Swift
ฉันมีคลาสที่เรียกว่าMyClassซึ่งเป็นคลาสย่อยของUIViewที่ฉันต้องการเริ่มต้นด้วยXIBไฟล์ ฉันไม่แน่ใจว่าจะเริ่มต้นคลาสนี้ด้วยไฟล์ xib ที่เรียกว่าอย่างไรView.xib class MyClass: UIView { // what should I do here? //init(coder aDecoder: NSCoder) {} ?? }
139 ios  swift 

10
Custom UITableViewCell จากปลายปากกาใน Swift
ฉันกำลังพยายามสร้างเซลล์มุมมองตารางที่กำหนดเองจากปลายปากกา ผมหมายถึงในบทความนี้ที่นี่ ฉันกำลังเผชิญกับสองประเด็น ฉันสร้างไฟล์. xib โดยมีวัตถุ UITableViewCell ลากไปไว้ ฉันสร้างคลาสย่อยของUITableViewCellและตั้งเป็นคลาสของเซลล์และเซลล์เป็นตัวระบุที่ใช้ซ้ำได้ import UIKit class CustomOneCell: UITableViewCell { @IBOutlet weak var middleLabel: UILabel! @IBOutlet weak var leftLabel: UILabel! @IBOutlet weak var rightLabel: UILabel! required init(coder aDecoder: NSCoder!) { super.init(coder: aDecoder) } override init(style: UITableViewCellStyle, reuseIdentifier: String!) { super.init(style: style, reuseIdentifier: reuseIdentifier) } override …
139 ios  uitableview  swift  ios8 

7
การใช้โปรโตคอลเป็นประเภทอาร์เรย์และพารามิเตอร์ฟังก์ชันอย่างรวดเร็ว
ฉันต้องการสร้างคลาสที่สามารถจัดเก็บอ็อบเจ็กต์ที่สอดคล้องกับโปรโตคอลบางอย่าง วัตถุควรถูกเก็บไว้ในอาร์เรย์ที่พิมพ์ ตามโปรโตคอลเอกสาร Swift สามารถใช้เป็นประเภท: เนื่องจากเป็นประเภทคุณจึงสามารถใช้โปรโตคอลได้ในหลายที่ที่อนุญาตประเภทอื่น ๆ ได้แก่ : เป็นประเภทพารามิเตอร์หรือประเภทการส่งคืนในฟังก์ชันวิธีการหรือตัวเริ่มต้น เป็นชนิดของค่าคงที่ตัวแปรหรือคุณสมบัติ เป็นประเภทของรายการในอาร์เรย์พจนานุกรมหรือคอนเทนเนอร์อื่น ๆ อย่างไรก็ตามสิ่งต่อไปนี้สร้างข้อผิดพลาดของคอมไพเลอร์: โปรโตคอล 'SomeProtocol' สามารถใช้เป็นข้อ จำกัด ทั่วไปเท่านั้นเนื่องจากมีข้อกำหนดในตัวเองหรือประเภทที่เกี่ยวข้อง คุณควรแก้ปัญหานี้อย่างไร: protocol SomeProtocol: Equatable { func bla() } class SomeClass { var protocols = [SomeProtocol]() func addElement(element: SomeProtocol) { self.protocols.append(element) } func removeElement(element: SomeProtocol) { if let index = find(self.protocols, element) …

18
ฉันจะตั้งค่าตัวหนาและตัวเอียงบน UILabel ของ iPhone / iPad ได้อย่างไร
ฉันจะตั้งค่าตัวหนาและตัวเอียงบนUILabeliPhone / iPad ได้อย่างไร ฉันค้นหาฟอรัม แต่ไม่มีอะไรช่วยฉัน มีใครช่วยฉันบ้าง

6
จะโทร C จาก Swift ได้อย่างไร
มีวิธีเรียก C รูทีนจาก Swift หรือไม่? ไลบรารี iOS / Apple จำนวนมากเป็นแบบ C เท่านั้นและฉันยังต้องการโทรหาสิ่งเหล่านี้ ตัวอย่างเช่นฉันต้องการเรียกไลบรารีรันไทม์ objc จาก swift โดยเฉพาะอย่างยิ่งคุณเชื่อมโยงส่วนหัว iOS C ได้อย่างไร
138 c  swift 

14
Swift: ตัวเลือกการทดสอบสำหรับศูนย์
ฉันใช้ Xcode 6 Beta 4 ฉันมีสถานการณ์แปลก ๆ นี้ซึ่งฉันไม่สามารถหาวิธีทดสอบตัวเลือกได้อย่างเหมาะสม หากฉันมี xyz ที่เป็นทางเลือกคือวิธีทดสอบที่ถูกต้อง: if (xyz) // Do something หรือ if (xyz != nil) // Do something เอกสารบอกว่าให้ทำวิธีแรก แต่ฉันพบว่าบางครั้งต้องใช้วิธีที่สองและไม่สร้างข้อผิดพลาดของคอมไพเลอร์ แต่ในบางครั้งวิธีที่สองจะสร้างข้อผิดพลาดของคอมไพเลอร์ ตัวอย่างเฉพาะของฉันคือการใช้ตัวแยกวิเคราะห์ GData XML เชื่อมต่ออย่างรวดเร็ว: let xml = GDataXMLDocument( XMLString: responseBody, options: 0, error: &xmlError); if (xmlError != nil) ที่นี่ถ้าฉันเพิ่งทำ: if xmlError มันจะกลับมาเป็นจริงเสมอ อย่างไรก็ตามถ้าฉันทำ: …
138 ios  swift  optional 

10
UIBarButtonItem ในแถบนำทางโดยทางโปรแกรม?
ฉันมองหาวิธีแก้ปัญหานี้มาระยะหนึ่งแล้ว แต่ยังไม่มีเลย เช่นทางออกเดียวคือ self.navigationItem.setRightBarButtonItem(UIBarButtonItem(barButtonSystemItem: .Stop, target: self, action: nil), animated: true) รหัสนี้จะเพิ่มปุ่มที่มีรูปภาพ "หยุด" เช่นนี้มีวิธีแก้ปัญหาอื่น ๆ ที่มี "ค้นหา" รีเฟรช "ฯลฯ แต่ถ้าฉันต้องการเพิ่มปุ่มโดยใช้โปรแกรมด้วยภาพที่ฉันต้องการล่ะ?


15
วิธีการสร้างการแจกแจง bitmask สไตล์ NS_OPTIONS ใน Swift
ในเอกสารประกอบของ Apple เกี่ยวกับการโต้ตอบกับ C APIs พวกเขาอธิบายถึงวิธีNS_ENUMการระบุการแจกแจงแบบ C ที่ทำเครื่องหมายด้วยวิธีเป็น Swift enumerations สิ่งนี้สมเหตุสมผลและเนื่องจากมีการระบุ enumerations ใน Swift เป็นenumประเภทค่าจึงง่ายต่อการดูวิธีการสร้างของเราเอง นอกจากนี้ยังกล่าวถึงNS_OPTIONSตัวเลือก C-style ที่มีเครื่องหมาย: Swift ยังนำเข้าตัวเลือกที่มีเครื่องหมายNS_OPTIONSแมโคร ในขณะที่ตัวเลือกลักษณะการทำงานคล้ายจะ enumerations นำเข้าตัวเลือกยังสามารถรองรับการดำเนินงานบางบิตเช่น&, และ| ~ใน Objective-C คุณหมายถึงชุดตัวเลือกที่ว่างเปล่าที่มีค่าคงที่เป็นศูนย์ ( 0) ใน Swift ใช้nilเพื่อแสดงการไม่มีตัวเลือกใด ๆ ระบุว่าไม่มีoptionsประเภทค่าใน Swift เราจะสร้างตัวแปรตัวเลือก C-Style เพื่อทำงานได้อย่างไร

9
วิธีการตั้งค่าระยะห่างระหว่างเซลล์และ UICollectionView - อัตราส่วนขนาด UICollectionViewFlowLayout
ฉันพยายามที่จะเพิ่มUICollectionViewการViewControllerและฉันจะต้องมี 3 เซลล์ต่อแถว 'โดยไม่ต้องช่องว่างระหว่างเซลล์ (มันควรมีลักษณะเช่นตาราง) ความกว้างของเซลล์ควรเป็นหนึ่งในสามของขนาดหน้าจอดังนั้นฉันคิดว่าความlayout.itemกว้างควรเท่ากัน แต่ฉันได้รับสิ่งนี้: ถ้าฉันลดขนาดนั้น (โดย7หรือ8 พิกเซลเช่น) มันจะดีกว่า แต่เซลล์ที่สามในแถวไม่สามารถมองเห็นได้อย่างสมบูรณ์และฉันยังมีพื้นที่ว่างนั้น (บน & ล่างและซ้ายและขวา) class ViewController: UIViewController, UICollectionViewDelegateFlowLayout, UICollectionViewDataSource { var collectionView: UICollectionView? var screenSize: CGRect! var screenWidth: CGFloat! var screenHeight: CGFloat! override func viewDidLoad() { super.viewDidLoad() screenSize = UIScreen.mainScreen().bounds screenWidth = screenSize.width screenHeight = screenSize.height // Do any …

13
ไม่พบคลาสย่อยเฉพาะของ NSManagedObject
ฉันกำลังพัฒนาแอพด้วย Core Data เมื่อฉันสร้างอินสแตนซ์โดยใช้: let entity = NSEntityDescription.entityForName("User", inManagedObjectContext: appDelegate.managedObjectContext) let user = User(entity: entity, insertIntoManagedObjectContext: appDelegate.managedObjectContext) ฉันได้รับคำเตือนในบันทึก: CoreData: warning: Unable to load class named 'User' for entity 'User'. Class not found, using default NSManagedObject instead. ฉันจะแก้ไขได้อย่างไร และคำถามอื่นฉันจะกำหนดวิธีการอินสแตนซ์ในคลาสย่อย NSManagedObject ได้อย่างไร แก้ไข: ฉันได้ระบุคลาสของเอนทิตีเหมือนในภาพหน้าจอต่อไปนี้:

12
รับค่าจำนวนเต็มจากสตริงอย่างรวดเร็ว
ดังนั้นฉันสามารถทำได้: var stringNumb: NSString = "1357" var someNumb: CInt = stringNumb.intValue แต่ฉันหาวิธีทำ w / a Stringไม่เจอ ฉันต้องการทำสิ่งที่ชอบ: var stringNumb: String = "1357" var someNumb: Int = Int(stringNumb) สิ่งนี้ใช้ไม่ได้: var someNumbAlt: Int = myString.integerValue
136 swift  swift2 

13
แปลงสตริงเป็นวันที่ใน Swift
ฉันจะแปลงสตริงนี้"2016-04-14T10:44:00+0000"เป็นNSDateและเก็บเฉพาะปีเดือนวันชั่วโมงได้อย่างไร Tในช่วงกลางของมันจริงๆพ่นออกสิ่งที่ผมใช้เมื่อทำงานกับวันที่

3
Swift - ร่าย Int เป็น enum: Int
ฉันยังใหม่กับ Swift มาก (เริ่มใช้งานได้ในสัปดาห์นี้) และกำลังย้ายแอปจาก Objective-C ฉันมีรหัสต่อไปนี้ใน Objective-C ที่ใช้งานได้ดี: typedef enum : int { MyTimeFilter1Hour = 1, MyTimeFilter1Day = 2, MyTimeFilter7Day = 3, MyTimeFilter1Month = 4, } MyTimeFilter; ... - (void)selectFilter:(id)sender { self.timeFilterSelected = (MyTimeFilter)((UIButton *)sender).tag; [self closeAnimated:YES]; } เมื่อแปลเป็น Swift ฉันทำสิ่งต่อไปนี้: enum MyTimeFilter : Int { case OneHour = …
135 ios  xcode  swift 

4
ข้อ จำกัด หลายประเภทใน Swift
สมมติว่าฉันมีโปรโตคอลเหล่านี้: protocol SomeProtocol { } protocol SomeOtherProtocol { } ตอนนี้ถ้าฉันต้องการฟังก์ชันที่ใช้ประเภททั่วไป แต่ประเภทนั้นต้องเป็นไปตามที่SomeProtocolฉันสามารถทำได้: func someFunc<T: SomeProtocol>(arg: T) { // do stuff } แต่มีวิธีเพิ่มข้อ จำกัด ประเภทสำหรับหลายโปรโตคอลหรือไม่? func bothFunc<T: SomeProtocol | SomeOtherProtocol>(arg: T) { } สิ่งที่คล้ายกันใช้เครื่องหมายจุลภาค แต่ในกรณีนี้จะเป็นการเริ่มต้นการประกาศประเภทอื่น นี่คือสิ่งที่ฉันได้ลอง <T: SomeProtocol | SomeOtherProtocol> <T: SomeProtocol , SomeOtherProtocol> <T: SomeProtocol : SomeOtherProtocol>
135 swift 

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