ฉันพบข้อผิดพลาดใน Xcode โดยบอกว่าไม่มีข้อมูลเกี่ยวกับตัวควบคุมมุมมอง
ไม่สามารถแทรกการเชื่อมต่อเต้าเสียบใหม่: ไม่พบข้อมูลใด ๆ สำหรับคลาสที่มีชื่อ
ทำไมสิ่งนี้จึงเกิดขึ้น
ฉันพบข้อผิดพลาดใน Xcode โดยบอกว่าไม่มีข้อมูลเกี่ยวกับตัวควบคุมมุมมอง
ไม่สามารถแทรกการเชื่อมต่อเต้าเสียบใหม่: ไม่พบข้อมูลใด ๆ สำหรับคลาสที่มีชื่อ
ทำไมสิ่งนี้จึงเกิดขึ้น
คำตอบ:
นี่คือบางสิ่งที่สามารถแก้ไขได้ (เพื่อเพิ่มความยาก):
วางด้วยตนเอง
@IBOutlet weak var viewName: UIView!
// or
@IBAction func viewTapped(_ sender: Any) { }
ปิด Xcode โดยสมบูรณ์และเริ่มโครงการของคุณใหม่
alias purgederiveddata='rm -rf ~/Library/Developer/Xcode/DerivedData/*'
ที่คุณ ~ / .bashrc ที่จะใช้คำสั่งpurgederiveddata
เพื่อยกเลิกคำสั่งกับหนึ่ง
หรือถ้าไม่มีผลงานดังกล่าวข้างต้นให้พิมพ์ชื่อของเต้าเสียบลงในแฟ้มแรก@IBOutlet weak var headerHeightConstraint: NSLayoutConstraint!
และจากนั้นคลิกและลากจากเต้าเสียบในปลายปากกากับตัวแปรที่คุณเพิ่งสร้างโปรแกรม มันควรจะทำงานโดยไม่ต้องยุ่งยากในการทำความสะอาดอาคารและลบอะไร
เพียงทำตามสองขั้นตอนต่อไปนี้เพื่อกำจัดข้อผิดพลาดนี้
ตอนนี้ลองเพิ่มการกระทำหรือเต้าเสียบ แค่นั้นแหละ.
การเข้ารหัสที่มีความสุข
ไม่มีคำแนะนำในคำตอบที่ดีที่สุดสำหรับฉัน กำลังจะบ้า จากนั้นสังเกตว่าผู้ช่วยแก้ไขตั้งค่าเป็นManualและฉันอยู่ในViewController.swift (Interface)แทนไฟล์ ViewController.swift
เปลี่ยนแล้วและแก้ไขปัญหาได้ ค่อนข้างน่าอาย แต่เฮ้เราทุกคนกำลังเรียนรู้
นี่คือขั้นตอนการแก้ไขสำหรับฉัน:
เสร็จแล้ว!
ฉันมีปัญหาเดียวกัน ฉันเหนื่อยดังต่อไปนี้การแก้ปัญหา แต่ไม่ได้ทำงาน:
Clean Project (cmd + shift + k)
และแม้กระทั่ง Clean Project Build (cmd + shift + alt + k)
Deleted Derived data
และ Module Cache content
วิธีแก้ปัญหาด้านล่างนี้:
IBOutlet / IBAction
ด้วยตนเอง (แนะนำให้คัดลอกวาง)Utilites
หน้าต่างConnection Inspector
IBOutlet
และIBAction
เขียนในไฟล์ต้นฉบับด้วย Interface Builderผมมีปัญหาเหมือนกัน. ฉันรู้ว่าในรายการ X-Code Manual
ถูกเลือกเมื่อฉันพยายามสร้างเต้าเสียบโดยการควบคุมการลาก
หลังจากที่ฉันตั้งเป็นอัตโนมัติมันทำงานได้
ฉันแก้ไขปัญหานี้โดยการสร้างป้ายกำกับและฟิลด์ข้อความโดยทางโปรแกรมแล้วลากคำสั่งจากวงกลมเล็ก ๆ ทางซ้ายของรหัสไปยังส่วนประกอบบนกระดานเรื่องราว เพื่อแสดงจุดของฉัน: ฉันเขียน@IBOutlet weak var HelloLabel: UILabel!
แล้วกดคำสั่งแล้วลากรหัสลงในส่วนประกอบบนกระดานเรื่องราว
@IBOutlet weak var myButton: UIButton
ฉันใช้กระบวนการเดียวกันในการตั้งค่า@IBAction func doSomething(_ sender: Any) { }
แล้วเชื่อมต่อ func นี้กับUIButtonบนกระดานเรื่องราวของฉัน ขอบคุณที่แบ่งปัน @KuboAndTwoStrings นี้
~/Library/Developer/Xcode/DerivedData/
ฉันพบวิธีแก้ปัญหาง่ายขึ้นเนื่องจากฉันพบข้อบกพร่องนี้ใน XCODE 9
ขั้นตอนที่หนึ่งไปที่ ViewController ของคุณและตนเองเขียนคุณสมบัติที่คุณต้องการที่จะเชื่อมต่อเป็นตัวอย่างด้านล่างให้แน่ใจว่าคุณใช้รูปแบบดังต่อไปนี้
@IBOutlet var คำถามที่อ่อนแอ StackView: UIStackView!
ขั้นตอนที่สองไปที่กระดานเรื่องราวของคุณและเชื่อมต่อมุมมองของคุณหรือสิ่งที่คุณพยายามเชื่อมต่อกับคุณสมบัติที่คุณสร้างขึ้นในขั้นตอนที่ 1
ข้างต้นจะช่วยคุณประหยัดเวลาในการลบและทำความสะอาดข้อมูลที่ได้รับ
ฉันได้รับข้อผิดพลาดนี้เมื่อฉันเปลี่ยนชื่อชั้น จากนั้นฉันก็แก้ไขมันโดยทำตามขั้นตอนด้านล่าง
Product
->Clean
Restart
Xcodeในกรณีของฉันนี่คือ bc ฉันเลือกไฟล์ UIViewController ใหม่ใน IB แล้วลอง ctrl- ลากไปที่คอนโทรลเลอร์ใหม่นี้โดยไม่ต้องลบการเชื่อมต่อก่อนหน้านี้ใน Connections Inspector ลบสิ่งเหล่านั้นก่อนแล้วลองอีกครั้ง
สำหรับฉันมันใช้งานได้บนแท็บด้านขวา> การโลคัลไลเซชันฉันเลือกเช็กบ็อกซ์ภาษาอังกฤษ มีการตรวจสอบฐานเบื้องต้นเท่านั้น หลังจากนั้นฉันก็ไม่มีปัญหาอีกแล้ว หวังว่านี่จะช่วยได้!
โปรดทำสองขั้นตอนต่อไปนี้เท่านั้นเพื่อกำจัดข้อผิดพลาดนี้
1. Clean Project using Product -> clean.
2. Run the Project.
ตอนนี้พยายามที่จะเพิ่ม / เชื่อมต่อการกระทำหรือร้าน
ทำงานได้ดีสำหรับฉันหลายครั้ง
มันเกิดขึ้นเมื่อฉันเพิ่มSwift
ไฟล์ลงในObjective-C
โครงการ
ดังนั้นในสถานการณ์นี้สิ่งที่คุณสามารถทำได้คือ .
Select
MY_FILE.Swift
>>
Delete
>>
Remove Reference
Select
MY_FOLDER
>>
Add
MY_FILE.Swift
Voila ! You are good to go .
ทางออกที่ง่ายที่สุด: - ฉันใช้ xCode 7 และ iOS 9
ใน. m ของคุณ
ลบ #import "VC.h"
บันทึก .m และเชื่อมโยงเต้าเสียบของคุณอีกครั้งว่ามันทำงานได้ดี
ฉันใช้ xCode 7 และ iOS 9
ใน. m ของคุณ
ลบ #import "VC.h"
บันทึก .m และเชื่อมโยงเต้าเสียบของคุณอีกครั้งว่ามันทำงานได้ดี
ใน. m ของคุณ
เพิ่ม #import "VC.h"
บันทึก .m
สิ่งนี้ไม่ได้ผลสำหรับฉัน แต่ฉันคิดออก
ภายในกระดานผมคัดลอก ViewController ที่สอดคล้องกันลงในคลิปบอร์ดและลบมันทิ้งไปหลังจากนั้นฉันวางมันอีกครั้ง
ทันใดนั้นทุกอย่างก็ทำงานเหมือนมีเสน่ห์อีกครั้ง!