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

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

16
ฉันจะแปลงสตริงเป็นแฮช MD5 ใน iOS โดยใช้ Swift ได้อย่างไร
ฉันต้องการแปลงสตริงเช่น "abc" เป็นแฮช MD5 ฉันต้องการทำสิ่งนี้ใน iOS และ Swift ฉันได้ลองใช้วิธีแก้ไขปัญหาด้านล่าง แต่ไม่ได้ผลสำหรับฉัน: การนำเข้า CommonCrypto ในเฟรมเวิร์ก Swift วิธีใช้วิธี CC_MD5 ในภาษาที่รวดเร็ว http://iosdeveloperzone.com/2014/10/03/using-commoncrypto-in-swift/ เพื่อให้ชัดเจนยิ่งขึ้นฉันต้องการให้ได้ผลลัพธ์ใน Swift ที่คล้ายกับเอาต์พุตของโค้ด PHP นี้: $str = "Hello"; echo md5($str); เอาต์พุต: 8b1a9953c4611296a827abf8c47804d7
111 ios  swift  md5 

20
วิธีการตั้งค่าความกว้างและความสูง UICollectionViewCell โดยทางโปรแกรม
ฉันกำลังพยายามใช้ไฟล์CollectionView. เมื่อฉันใช้ Autolayout เซลล์ของฉันจะไม่เปลี่ยนขนาด แต่จะอยู่ในแนวเดียวกัน ตอนนี้ฉันอยากจะเปลี่ยนขนาดเป็นเช่น //var size = CGSize(width: self.view.frame.width/10, height: self.view.frame.width/10) ฉันลองตั้งค่าในไฟล์ CellForItemAtIndexPath collectionCell.size = size มันไม่ได้ผล มีวิธีที่จะบรรลุนี้หรือไม่? แก้ไข : ดูเหมือนว่าคำตอบจะเปลี่ยนความกว้างและความสูง CollectionView ของฉันเท่านั้นเอง มีความขัดแย้งในข้อ จำกัด หรือไม่? มีความคิดเกี่ยวกับเรื่องนี้ไหม

20
ฉันจะใช้ UIColorFromRGB ใน Swift ได้อย่างไร
ใน Objective-C เราใช้รหัสนี้เพื่อตั้งรหัสสี RGB สำหรับมุมมอง: #define UIColorFromRGB(rgbValue) [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 green:((float)((rgbValue & 0xFF00) >> 8))/255.0 blue:((float)(rgbValue & 0xFF))/255.0 alpha:1.0] view.backgroundColor=UIColorFromRGB(0x209624); ฉันจะใช้สิ่งนี้ใน Swift ได้อย่างไร
110 ios  swift 

21
Swift: วิธีรับสตริงย่อยจากจุดเริ่มต้นจนถึงดัชนีสุดท้ายของอักขระ
ฉันต้องการเรียนรู้วิธีที่ดีที่สุด / ง่ายที่สุดในการเปลี่ยนสตริงให้เป็นสตริงอื่น แต่มีเพียงส่วนย่อยเริ่มต้นที่จุดเริ่มต้นและไปที่ดัชนีสุดท้ายของอักขระ ตัวอย่างเช่นแปลง "www.stackoverflow.com" เป็น "www.stackoverflow" ข้อมูลโค้ดใดที่จะทำเช่นนั้นและเป็นข้อมูลที่รวดเร็วที่สุด (ฉันหวังว่านี่จะไม่ทำให้เกิดการถกเถียง แต่ฉันไม่พบบทเรียนที่ดีเกี่ยวกับวิธีจัดการสตริงย่อยใน Swift
110 ios  swift 

4
พิมพ์โดยไม่ขึ้นบรรทัดใหม่อย่างรวดเร็ว
ใน swift 2.0 print()จะเพิ่มอักขระขึ้นบรรทัดใหม่โดยอัตโนมัติ ใน Swift 1.2 println()และprint()เคยเป็นฟังก์ชันแยกกัน ดังนั้นฉันจะพิมพ์ข้อความและไม่เพิ่มบรรทัดใหม่ได้อย่างไรเนื่องจาก swift ไม่มีฟังก์ชันการพิมพ์ที่ไม่ต่อท้ายบรรทัดใหม่อีกต่อไป
110 swift  swift3  swift2 

26
SourceKitService ใช้ CPU และ Grinds Xcode เพื่อหยุด
นี่ไม่ใช่ปัญหาเบต้า ฉันใช้ Xcode 6.0.1 รุ่นที่ใช้งานจริง ปัญหาที่ฉันพบคือเมื่อฉันพยายามสร้างหรือเรียกใช้โค้ดที่ฉันกำลังทำงานอยู่ Xcode จะไม่ตอบสนองเป็นระยะเวลานานและ SourceKitService ใช้ CPU มากกว่า 400% (ตามการตรวจสอบกิจกรรม) ปัญหานี้เป็นปัญหาใหม่เมื่อไม่กี่วันที่ผ่านมาแม้ว่าฉันจะใช้ Xcode 6.0 อย่างผิดปกติตั้งแต่เปิดตัวอย่างเป็นทางการเมื่อวันที่ 17 กันยายนฉันอัปเกรดเป็น 6.0.1 โดยหวังว่าจะมีการแก้ไขสำหรับปัญหานี้ มีความคิดว่าปัญหาจะเป็นอย่างไร?
110 ios  iphone  swift  xcode  sourcekit 

17
ฉันจะใช้ Swift's Codable เพื่อเข้ารหัสลงในพจนานุกรมได้อย่างไร
ฉันมีโครงสร้างที่ดำเนิน Swift Codable4 มีวิธีง่ายๆในการเข้ารหัสโครงสร้างนั้นในพจนานุกรมหรือไม่? let struct = Foo(a: 1, b: 2) let dict = something(struct) // now dict is ["a": 1, "b": 2]
110 swift  swift4  codable 

20
UILabel พร้อมข้อความสองสีที่ต่างกัน
ฉันต้องการแสดงสตริงเช่นนี้ในUILabel: มี 5 ผลลัพธ์ โดยที่หมายเลข 5 เป็นสีแดงและส่วนที่เหลือของสตริงเป็นสีดำ ฉันจะทำสิ่งนี้ในรหัสได้อย่างไร?

7
วิธีรับตัวควบคุมมุมมองรูท
ฉันต้องการอินสแตนซ์ของตัวควบคุมมุมมองรูท ฉันลองวิธีการเหล่านั้น: UIViewController *rootViewController = (UIViewController*)[[[UIApplication sharedApplication] keyWindow] rootViewController]; ผลตอบแทน: null : นอกจากนี้เมื่อฉันพยายามรับอาร์เรย์ของคอนโทรลเลอร์: NSArray *viewControllers = self.navigationController.viewControllers; ส่งคืนคอนโทรลเลอร์เพียงตัวเดียว แต่ไม่ใช่ตัวควบคุมมุมมองรูทของฉัน หากฉันพยายามใช้ตัวควบคุมการนำทาง: UIViewController *root = (UIViewController*)[self.navigationController.viewControllers objectAtIndex:0]; ผลตอบแทน: null : ความคิดใด ๆ ทำไม? ฉันจะลองใช้อินสแตนซ์ของตัวควบคุมมุมมองรูทของฉันได้อย่างไร ขอบคุณ.

8
Swift - ประเภทใดที่จะใช้? NSString หรือ String
ด้วยการแนะนำ Swift ฉันพยายามที่จะเปลี่ยนภาษาใหม่ ฉันเป็นนักพัฒนา iOS และจะใช้ประเภทต่างๆเช่นNSString, NSInteger, NSDictionaryในแอปพลิเคชัน ฉันสังเกตเห็นว่าใน ebook "The Swift Programming Language" ของ Apple พวกเขาใช้ประเภท SwiftString, Int, Dictionary ฉันสังเกตเห็นว่าประเภท Swift ไม่มี (หรือมีชื่อต่างกัน) ฟังก์ชันบางอย่างที่ประเภท Foundation ทำ ตัวอย่างเช่นNSStringมีlengthคุณสมบัติ แต่ฉันไม่สามารถหา Swift ที่คล้ายกันStringได้ ฉันสงสัยว่าสำหรับแอปพลิเคชัน iOS ฉันควรใช้ประเภท Foundation หรือไม่?
109 ios  objective-c  string  macos  swift 

8
อาร์เรย์สองมิติใน Swift
ฉันสับสนมากเกี่ยวกับอาร์เรย์ 2D ใน Swift ให้ฉันอธิบายทีละขั้นตอน และคุณช่วยแก้ไขฉันได้ไหมถ้าฉันผิด ก่อนอื่น; การประกาศอาร์เรย์ว่าง: class test{ var my2Darr = Int[][]() } ประการที่สองเติมอาร์เรย์ (เช่นโดยmy2Darr[i][j] = 0ที่ i, j เป็นตัวแปร for-loop) class test { var my2Darr = Int[][]() init() { for(var i:Int=0;i<10;i++) { for(var j:Int=0;j<10;j++) { my2Darr[i][j]=18 /* Is this correct? */ } } } } และสุดท้ายคือการแก้ไของค์ประกอบในอาร์เรย์ class …
109 arrays  swift 

11
วิธีรับความสูงของแป้นพิมพ์?
ความสูงของแป้นพิมพ์บนอุปกรณ์ iOS ที่แตกต่างกันนั้นแตกต่างกัน มีใครรู้บ้างว่าฉันจะได้รับความสูงของแป้นพิมพ์ของอุปกรณ์โดยทางโปรแกรม
109 ios  swift  uikeyboard 

4
การรับและการตั้งค่าตำแหน่งเคอร์เซอร์ของ UITextField และ UITextView ใน Swift
ฉันได้ทดลองUITextFieldและวิธีการทำงานกับตำแหน่งเคอร์เซอร์ ฉันพบคำตอบ Objective-C ของความสัมพันธ์จำนวนหนึ่งเช่นเดียวกับใน รับตำแหน่งเคอร์เซอร์ของ UITextField ใน iOS ควบคุมตำแหน่งเคอร์เซอร์ใน UITextField UITextField รับคำที่แก้ไขในปัจจุบัน แต่เนื่องจากฉันทำงานกับ Swift ฉันจึงต้องการเรียนรู้วิธีรับตำแหน่งเคอร์เซอร์ปัจจุบันและตั้งค่าใน Swift ด้วย คำตอบด้านล่างเป็นผลมาจากการทดลองและการแปลของฉันจาก Objective-C

3
String.Index ทำงานอย่างไรใน Swift
ฉันได้อัปเดตโค้ดและคำตอบเก่าของฉันด้วย Swift 3 แต่เมื่อฉันไปที่ Swift Strings และ Indexing มันเป็นเรื่องยากที่จะเข้าใจสิ่งต่างๆ โดยเฉพาะฉันกำลังลองสิ่งต่อไปนี้: let str = "Hello, playground" let prefixRange = str.startIndex..<str.startIndex.advancedBy(5) // error โดยที่บรรทัดที่สองทำให้ฉันมีข้อผิดพลาดต่อไปนี้ 'advancedBy' ไม่พร้อมใช้งาน: ในการเลื่อนดัชนีโดย n ขั้นตอนให้เรียก 'index (_: offsetBy :)' บนอินสแตนซ์ CharacterView ที่สร้างดัชนี ฉันเห็นว่าStringมีวิธีการดังต่อไปนี้ str.index(after: String.Index) str.index(before: String.Index) str.index(String.Index, offsetBy: String.IndexDistance) str.index(String.Index, offsetBy: String.IndexDistance, limitedBy: String.Index) สิ่งเหล่านี้ทำให้ฉันสับสนในตอนแรกดังนั้นฉันจึงเริ่มเล่นกับพวกเขาจนกว่าฉันจะเข้าใจพวกเขา ฉันกำลังเพิ่มคำตอบด้านล่างเพื่อแสดงวิธีการใช้งาน
109 swift  string  indexing 

13
ฉันจะใช้ swift ใน Terminal ได้อย่างไร?
ผมอ่านมีอะไรใหม่ใน Xcode 6 บทความแนะนำคุณสมบัติใหม่บางอย่างเกี่ยวกับ Xcode 6 และระบุว่า: บรรทัดคำสั่ง ดีบักเกอร์ของ Xcode ประกอบด้วยภาษา Swift เวอร์ชันโต้ตอบที่เรียกว่า REPL (Read-Eval-Print-Loop) ใช้ไวยากรณ์ของ Swift เพื่อประเมินและโต้ตอบกับแอปที่กำลังทำงานอยู่หรือเขียนโค้ดใหม่ในสภาพแวดล้อมแบบสคริปต์ REPL มีให้จากภายใน LLDB ในคอนโซลของ Xcode หรือจาก Terminal ฉันต้องการทราบวิธีรับ REPL?

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