อัพเดท - ตาม Xcode 6 Beta 4
เป้าหมายการปรับใช้ขั้นต่ำ iOS 7 และ OS X 10.9
คอมไพเลอร์ Swift และ Xcode ตอนนี้บังคับใช้เป้าหมายการปรับใช้ขั้นต่ำของ iOS 7 หรือ OS X Mavericks การตั้งค่าเป้าหมายการปรับใช้ก่อนหน้านี้ส่งผลให้เกิดความล้มเหลวในการสร้าง
จากบันทึกย่อประจำรุ่น Xcode 6
ดังนั้นคำตอบก่อนหน้าของฉัน (แสดงด้านล่าง) จะไม่สามารถใช้ได้กับการพัฒนาเพิ่มเติมใด ๆ Swift จะไม่สามารถใช้งานได้กับ iOS6 และด้านล่างอีกต่อไป
แอปพลิเคชัน Swift สามารถทำงานบน iOS 6 แม้ว่าหลายคนกำลังบอกว่า Swift จะรองรับเฉพาะ iOS 7+ และ OS X 10.9+ จากประสบการณ์ของฉันมันไม่ใช่
ฉันได้ทดสอบแอปพลิเคชันแบบง่ายที่เขียนอย่างสมบูรณ์ใน Swift ในอุปกรณ์ iOS 6 มันทำงานได้ดีอย่างสมบูรณ์แบบ ดังที่ Apple กล่าวว่ารหัส Swift นั้นเป็นไบนารีที่เข้ากันได้กับรหัส Objective-C มันใช้คอมไพเลอร์และรันไทม์เดียวกันเพื่อสร้างไบนารี
นี่คือรหัสที่ฉันทดสอบ:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let button = UIButton.buttonWithType(UIButtonType.System) as UIButton
button.frame = CGRectMake(100, 100, 100, 50)
button.backgroundColor = UIColor.greenColor()
button.setTitle("Test Button", forState: UIControlState.Normal)
button.addTarget(self, action: "buttonTapped:", forControlEvents: UIControlEvents.TouchUpInside)
self.view.addSubview(button)
}
func buttonTapped(sender: UIButton!) {
println("buttonTapped")
}
}
มันเป็นแอพพลิเคชั่นที่ง่ายเพียงแค่เพิ่มปุ่มโดยทางโปรแกรม ใบสมัครของฉันมีเพียงสองไฟล์และAppDelegate.swift
ViewController.swift
ดังนั้นหากคุณไม่ได้ใช้ API ใหม่ใด ๆ ที่เพิ่มเข้ามาเป็นส่วนหนึ่งของ iOS 8 SDK หรือบาง API เฉพาะของ Swift (API ที่สอดคล้องกันไม่พร้อมใช้งานสำหรับ Objective-C) แอปพลิเคชันของคุณจะทำงานได้อย่างราบรื่นบน iOS 6 หรือใหม่กว่า บน iOS 5 (ไม่ผ่านการทดสอบ) APIs ส่วนใหญ่ใน Swift เป็นเพียงการแทนที่ API ของ Objective-C ที่มีอยู่ ในความเป็นจริงพวกเขาเหมือนกันในไบนารี
หมายเหตุ: ตาม Xcode 6 beta 4 สำหรับเป้าหมายการปรับใช้แอปอย่างรวดเร็วควรเป็น iOS 7 หรือ OS X 10.9 (ดูการอัปเดตข้างต้น) ดังนั้น swift จะไม่สามารถใช้งานได้กับ iOS6 และด้านล่างอีกต่อไป