แม้ว่าตัวสร้างส่วนต่อประสานจะรับรู้ถึงสิ่งใดMyClass
ก็ตามฉันได้รับข้อผิดพลาดเมื่อเริ่มต้นแอปพลิเคชัน
สิ่งนี้เกิดขึ้นเมื่อMyClass
เป็นส่วนหนึ่งของไลบรารีและจะไม่เกิดขึ้นหากฉันรวบรวมคลาสโดยตรงในเป้าหมายแอปพลิเคชัน
แม้ว่าตัวสร้างส่วนต่อประสานจะรับรู้ถึงสิ่งใดMyClass
ก็ตามฉันได้รับข้อผิดพลาดเมื่อเริ่มต้นแอปพลิเคชัน
สิ่งนี้เกิดขึ้นเมื่อMyClass
เป็นส่วนหนึ่งของไลบรารีและจะไม่เกิดขึ้นหากฉันรวบรวมคลาสโดยตรงในเป้าหมายแอปพลิเคชัน
คำตอบ:
แม้จะมีข้อผิดพลาด" ไม่ทราบคลาส MyClass ในไฟล์เครื่องมือสร้างอินเทอร์เฟซ " แต่ปัญหานี้ไม่มีส่วนเกี่ยวข้องกับตัวสร้างส่วนต่อประสาน แต่มีตัวเชื่อมโยงซึ่งไม่ได้ทำการเชื่อมโยงชั้นเรียนเนื่องจากไม่มีรหัสใช้โดยตรง
เมื่อข้อมูล. nib (รวบรวมจาก. xib) ถูกโหลดที่รันไทม์MyClass
มีการอ้างอิงโดยใช้สตริง แต่ตัวเชื่อมโยงไม่ได้วิเคราะห์ฟังก์ชันการใช้งานโค้ดเพียงแค่มีโค้ดอยู่ดังนั้นจึงไม่ทราบ เนื่องจากไม่มีไฟล์ต้นฉบับอื่นอ้างอิงถึงคลาสนั้นตัวลิงก์จะปรับให้เหมาะสมเมื่อไม่มีการดำเนินการ ดังนั้นเมื่อรหัสของ Apple พยายามโหลดคลาสดังกล่าวจะไม่สามารถค้นหารหัสที่เกี่ยวข้องได้และพิมพ์คำเตือน
ตามค่าเริ่มต้นเป้าหมาย Objective-C จะมีการ-all_load -ObjC
ตั้งค่าสถานะตามค่าเริ่มต้นซึ่งจะเก็บสัญลักษณ์ทั้งหมดไว้ แต่ฉันเริ่มต้นด้วยเป้าหมาย C ++ และไม่มีสิ่งนั้น อย่างไรก็ตามฉันพบวิธีรอบนี้ซึ่งทำให้ linker ก้าวร้าว
แฮ็คที่ฉันใช้อยู่เดิมคือการเพิ่มรูทีนสแตติกที่ว่างเปล่าเช่น:
+(void)_keepAtLinkTime;
ซึ่งไม่ทำอะไรเลย แต่ฉันจะโทรหนึ่งครั้งเช่น:
int main( int argc, char** argv )
{
[MyClass _keepAtLinkTime];
// Your code.
}
สิ่งนี้จะบังคับให้ลิงเกอร์เก็บทั้งคลาสและข้อผิดพลาดจะหายไป
ในฐานะที่เป็น jlstrecker ชี้ให้เห็นในความคิดเห็นเราไม่จำเป็นต้องเพิ่ม_keepAtLinkTime
วิธีการจริงๆ เพียงเรียกชื่อที่มีอยู่เช่น:
[MyClass class];
เคล็ดลับ (ตราบเท่าที่คุณได้รับจากNSObject
)
แน่นอนคุณสามารถเรียกสิ่งนี้ในตำแหน่งใด ๆ ของรหัสของคุณ ฉันคิดว่ามันอาจจะเป็นในรหัสที่ไม่สามารถเข้าถึงได้ ความคิดคือการหลอก linker ให้คิดว่าMyClass
ใช้ที่อื่นเพื่อไม่ให้ก้าวร้าวในการเพิ่มประสิทธิภาพ
นิยามมุมมองที่รวดเร็ว init(coder aDecoder: NSCoder)
ให้แน่ใจว่าจะแทนที่ Objective-C definition ของ view controller และปลายปากกาในต้นแพร์
เพิ่มชื่อโมดูลไปยังผู้ตรวจสอบรายละเอียด Nib ที่คุณเลือกชั้นเรียนของคุณ
MyClass
คุณไม่ได้มีการปรับเปลี่ยน เพียงแค่เรียกวิธีการสืบทอดจากเช่นNSObject
+class
MyClass.m
ในส่วน Target Membership ของ File Inspector
ฉันแก้ไขสิ่งนี้ตามสิ่งที่ลอร่าแนะนำ แต่ฉันไม่จำเป็นต้องสร้างไฟล์ใหม่
ใช้ XCode 4 ในProject Navigatorเลือกไฟล์. m ที่มีคลาสที่บ่นเกี่ยวกับ
ไปที่ View-> Utilities-> Show File Inspector
(นี่จะแสดงFile Inspectorทางด้านขวาพร้อมด้วยข้อมูล. m-file นั้น)
เปิดส่วนสมาชิกเป้าหมายและตรวจสอบให้แน่ใจว่าเป้าหมายของคุณถูกเลือกสำหรับไฟล์. m นี้
เมื่อฉันเพิ่มไฟล์. m ของฉันลงในโครงการของฉันมันไม่ได้เพิ่มลงในเป้าหมายเริ่มต้นของฉันด้วยเหตุผลบางประการและนั่นทำให้ฉันได้รับข้อผิดพลาดที่คุณกล่าวถึง
สิ่งนี้ไม่มีอะไรเกี่ยวข้องกับเครื่องมือสร้างอินเตอร์เฟสสิ่งที่เกิดขึ้นที่นี่คือสัญลักษณ์ที่ไม่ได้ถูกโหลดจากห้องสมุดแบบคงที่ของคุณโดย Xcode ในการแก้ไขปัญหานี้คุณจะต้องเพิ่มการตั้ง-all_load -ObjC
ค่าสถานะในOther Linker Flags
คีย์ (และอาจเป็นเป้าหมาย) การตั้งค่าการสร้าง
เนื่องจาก Objective-C สร้างเพียงสัญลักษณ์เดียวต่อคลาสเราจึงต้องบังคับให้ตัวลิงก์โหลดสมาชิกของคลาสด้วยโดยใช้แฟล็ก -ObjC และเราต้องบังคับให้รวมวัตถุทั้งหมดของเราจากไลบรารีแบบคงที่ของเราด้วยการเพิ่ม-all_load
ธงลิงเกอร์ หากคุณข้ามการตั้งค่าสถานะเหล่านี้ไม่ช้าก็เร็วคุณจะพบข้อผิดพลาดunrecognized selector
หรือรับข้อยกเว้นอื่น ๆ เช่นสิ่งที่คุณสังเกตเห็นที่นี่
-ObjC
ธงเดียวเท่านั้นที่แก้ไขในกรณีของฉัน
-ObjC
ดีพอสำหรับการแก้ไขปัญหา
ฉันพบปัญหานี้ในวันนี้โดยใช้ Swift
ผมเปลี่ยนชั้นเรียนไปModel.h + Model.m
Model.swift
วัตถุนี้ถูกใช้ใน Interface Builder class = Model
กับ
ทันทีที่ฉันเปลี่ยนวัตถุคลาสจะไม่สามารถโหลดได้อีกต่อไป
สิ่งที่ฉันต้องทำคือเปลี่ยนการอ้างอิงระดับใน IB จาก:
Class = Model
Module =
ถึง
Class = Model
Module = <TARGETNAME>
คุณจะพบ<TARGETNAME>
ในการตั้งค่าการสร้าง นอกจากนี้ยังเป็นชื่อที่ปรากฏใน Swift-Header ที่คุณสร้างขึ้น:#import "TARGETNAME-Swift.h"
Module
ชื่อถูกต้องในแบบหล่นลง มันเป็นชื่อของแอพของฉัน
ไปที่ "ProjectName" คลิกที่มันแล้วไปที่แท็บ "สร้างเฟส" จากนั้นคลิกที่ "รวบรวมแหล่งที่มา" และจากนั้นคลิกที่ปุ่ม "+" หน้าต่างจะปรากฏขึ้นเลือก "MyClass m "ไฟล์จากนั้นคลิก" เพิ่ม "
สร้างโครงการและเรียกใช้ปัญหาจะได้รับการแก้ไขอย่างแน่นอน
เป็นปัญหาแคช Xcode4 เพียงลบโฟลเดอร์ทั้งหมดภายใต้ / Users / your_user / Library / Application Support / iPhone Simulator / 4.3 / Applications /
นอกจากนี้หากคุณมีปัญหาเดียวกันกับการทดสอบ iPhone ของคุณให้ลบแอปเก่าก่อนเรียกใช้ ...
โชคดี. ปาส
บางครั้ง IBuilder พลาด customModule="AppName" customModuleProvider="target"
หากต้องการแก้ไขให้เปิดกระดานเรื่องราวเป็นซอร์สโค้ดและแทนที่บรรทัดนี้:
<viewController storyboardIdentifier="StoryboardId" id="SomeID" customClass="CustomClass"
sceneMemberID="viewController">
สำหรับสิ่งนี้:
<viewController storyboardIdentifier="StoryboardId" id="SomeID" customClass="CustomClass"
customModule="AppName" customModuleProvider="target" sceneMemberID="viewController">
customModule="MyFrameworkName"
ผมสามารถที่จะแก้ไขปัญหาของฉันที่มีเพียง ขนาดใหญ่ 10
กรณีของฉัน - พยายามใช้คลาสจากเฟรมเวิร์กที่รวดเร็วในโครงการ c วัตถุประสงค์ของฉันฉันได้รับข้อผิดพลาดนี้ วิธีแก้ไขคือการเพิ่ม Module (swift framework) ของคลาสใน Interface builder / Storyboard ดังที่แสดงด้านล่าง ไม่มีอะไรอีกแล้ว
ไปที่ Build Phases-> Compile Sources และเพิ่มไฟล์. m ใหม่ของคุณ
ในกรณีของฉันมันแสดงข้อผิดพลาดสำหรับคลาสที่ไม่มีอยู่จริง! ฉันสงสัยว่ามันเป็นสิ่งที่เกิดขึ้นกับไฟล์สตอรี่บอร์ด หากคุณไม่รู้จักไฟล์คลาสในข้อผิดพลาดให้ลองทำดังนี้:
1) เปิดโครงการของคุณในประเสริฐหรือบรรณาธิการอื่นที่ดี ค้นหาชั้นเรียนที่ถูกอ้างถึง 2) ลบบิตทั้งหมดที่ระบุว่า
customClass="UnrecognizedClassName"
3) บันทึก 4) กลับไปที่ xcode และทำความสะอาดโครงการและลองใช้งานทันที
ทำงานให้ฉัน
customClass="MyCla"
) แทนการลบการกำหนดชั้นเองมันเป็นที่ชาญฉลาดสำหรับผมที่จะใส่เพียงในชั้นเรียนผมตั้งใจจะใช้ในสถานที่แรก :)
ฉันต้องการเพิ่มคำตอบนี้เพราะส่วนใหญ่ถ้าไม่ใช่คำตอบทั้งหมดที่นี่ถือว่าคลาสนั้นมีอยู่จริง .. เป็นเพียงว่าตัวลิงก์ / คอมไพเลอร์นั้นโง่เกินกว่าจะดูได้ .. ดังนั้นคำตอบจึงหมุนไปรอบ ๆ ของคลาสหรือสร้างการแฮ็คเพื่อ 'บังคับ' มีอยู่จริง ..
ปัญหาของฉันเกิดขึ้นเมื่อข้อความนี้กำลังพูดถึงคลาสที่ไม่มีอยู่จริง .. ดังนั้นตัวอย่างฉันจะย้อนกลับไปสู่การแก้ไขคอมไพล์เก่าที่ไม่มีความรู้ในคลาสที่แน่นอน .. แต่คอมไพเลอร์บ่นว่าคลาสดังกล่าวไม่ได้ ' ไม่มีอยู่ ..
สารละลาย?
คุณควรจะดีหลังจากนั้น
วิธีที่ดีที่สุดในการลบข้อผิดพลาดคือ: 1) เลือกไฟล์คลาส (.m) 2) ภายใต้ "การเป็นสมาชิกเป้าหมาย ", "ตรวจสอบ"รายการชื่อโครงการ
ฉันแก้ไขได้โดยคัดลอกข้อความจาก class.h และ. m ของฉันลบไฟล์คลาสเหล่านั้นออกจากโครงการและสร้างไฟล์ class.h และ. m ใหม่ที่มีชื่อเดียวกันโดยใช้ "เพิ่มไฟล์" จากนั้นฉันก็วางโค้ดกลับเข้าไปในไฟล์ใหม่และทุกอย่างก็ใช้งานได้ดี อย่างใดไฟล์ที่ไม่ได้เชื่อมโยงอย่างถูกต้องเมื่อพวกเขาถูกสร้างขึ้น ฉันไม่จำเป็นต้องใช้การตั้งค่าตัวเชื่อมโยงใด ๆ หลังจากนั้น
ฉันแก้ไขมันในที่สุดฉันลืมที่จะเพิ่มรหัสต่อไปนี้ไปยังไฟล์. m ของฉัน:
@implementation MyTableViewCell
@end
ดังนั้นมันจึงเกิดขึ้นเพราะฉันได้สร้างตัวยึด @ อินเทอร์เฟซสำหรับเซลล์ตารางของฉันที่มีการเชื่อมต่อกับองค์ประกอบในไฟล์. xib แต่มีข้อผิดพลาดในตัวสร้างส่วนต่อประสานที่ไม่มีการระบุ @implementation สำหรับชั้นเรียน หาไม่เจอ
ฉันผ่านขั้นตอนทั้งหมดจากฟอรัมอื่นของการดู. xib เป็นซอร์สและเห็น MyTableViewCell แม้ว่าฉันได้คอมเม้นต์มันออกมาจากโค้ดของฉัน ฉันลองรีเซ็ตเครื่องจำลอง ฉันยังพยายามแบ่งชั้นเรียนทั้งหมดของฉันออกเป็นไฟล์แยกต่างหากที่มีชื่อเหมือนกับส่วนต่อประสาน แต่ไม่มีอะไรทำงานจนกระทั่งถึงตอนนี้
PS ในประสบการณ์ของฉันมันไม่สำคัญว่าชื่อของไฟล์. h / .m จะแตกต่างจากชื่อของ @interface ฉันมีไฟล์หลายไฟล์ที่มี @interface มากกว่าหนึ่งไฟล์และทำงานได้ดี
PPS ฉันมีคำอธิบายโดยละเอียดเพิ่มเติมว่าทำไม UITableViewCell และ UICollectionViewCell ทำให้เกิดข้อผิดพลาดนี้ที่https://stackoverflow.com/a/22797318/539149พร้อมกับวิธีการเปิดเผยในเวลารวบรวมโดยใช้ registerClass: forCellWithReuseIdentifier:
สิ่งนี้เกิดขึ้นเนื่องจาก. xib มีลิงก์เก่าไปยัง App Delegate เก่าซึ่งไม่มีอยู่อีกต่อไป ฉันคงเช่นนี้:
เพียงแค่เพิ่มรหัสด้านล่างที่จุดเริ่มต้นของวิธีการสมัครผู้สมัครใช้งานวิธีการชำระเงินแล้วมันจะทำงานได้ดี
[คลาส myclass];
ฉันลองสิ่งนี้และคำตอบอื่น ๆ ที่ระบุไว้ในเว็บไซต์นี้ซึ่งไม่มีคำตอบใด ๆ ให้ฉัน ความคิดเห็นนี้ (จากhttp://www.iphonedevsdk.com/forum/iphone-sdk-development/43330-unknown-class-interface-builder-file.html ) ช่วย:
หลังจากค้นหาและค้นหาและค้นหาในที่สุดฉันก็ค้นพบชื่อของคลาสที่ถูกลบนี้ที่ซ่อนอยู่ในไฟล์ ฉันต้องเปิดไฟล์เครื่องมือสร้างส่วนต่อประสานใน X-code โดยคลิกขวาที่ไฟล์เหล่านั้นและเลือก 'ดูเป็นซอร์สโค้ด' จากนั้นค้นหามันขึ้นมาด้วย
<object class="NSMutableArray" key="dict.values"> <bool key="EncodedWithXMLCoder">YES</bool> <string>com.apple.InterfaceBuilder.IBCocoaTouchP lu gin</string> <string>*this was the class name*</string>
การลบบรรทัดสุดท้ายนั้นไม่สามารถแก้ไขได้อย่างน่าเสียดายโดยบ่นว่ามีจำนวนรายการที่ไม่ถูกต้องในไฟล์ CustomClass
คุณจำเป็นต้องลบบรรทัดที่เกี่ยวข้องในส่วนของเส้นข้างต้นนั้นซึ่งหมายถึง
ในกรณีของฉันฉันมี XCode6 ซึ่งเป็นไฟล์. m คลาสที่ระบุท้ายสถานที่ที่ผิดในขั้นตอนการสร้าง - มันควรจะอยู่ภายใต้แหล่งรวบรวมแต่ท้ายที่สุดใน
ไม่เพียง แต่ในการตั้งค่าโครงการ แต่ในการตั้งค่าเป้าหมายคุณต้องเพิ่ม -all_load -ObjC ด้วย
Core-Plot: คลาสที่ไม่รู้จัก CPLayerHostingView ในไฟล์ Interface Builder
ปัญหานี้ดูเหมือนจะไม่ล้าสมัย
ฉันมีปัญหาเดียวกันกับ Xcode 8 และแก้ไขมันคล้าย ๆ กับsmilebot :
เปิดไฟล์สตอรีบอร์ดของคุณเป็น "ซอร์สโค้ด" ภายใน Xcode:
ค้นหาคลาสที่ถูกอ้างถึง & ลบทั้งบิตที่ระบุ
customClass = "UnrecognizedClassName"
เพียงลบ MyClass.m และ. h และเพิ่มลงในโครงการอีกครั้งก็ใช้งานได้สำหรับฉัน
ฉันมี 'ไม่รู้จักคลาส favouritesButton ในไฟล์ตัวสร้างส่วนต่อประสาน' และติดตามไปยังฉากเรื่องราวที่ปุ่มในคำถามมีคลาสแบบกำหนดเองปลอมของ "favouritesButton" ในฟิลด์คลาสที่ด้านบนของตัวตรวจสอบตัวตน ฉันตั้งใจจะใส่ค่านั้นในฟิลด์ถัดไป: ฉลากข้อมูลประจำตัว
การเปลี่ยนสิ่งนี้เป็น "UIButton" แก้ปัญหาได้
ฉันวิ่งเข้าไปในนี้ในสวิฟท์
การย้ายไฟล์. xib ไปยังโฟลเดอร์ Base.lproj ของโครงการกำจัดข้อผิดพลาดนี้
ฉันมีข้อผิดพลาดนี้หมดไปในวันนี้เมื่อแปลงแอพ aaLuminate ของฉันเป็น Universal ภายใต้ Xcode 4 แอพนี้ขึ้นอยู่กับเทมเพลตยูทิลิตี้และเดิมสร้างขึ้นภายใต้ Xcode 3
เพื่อประหยัดเวลาฉันคัดลอก iPhone Main และ Flipside Views ไปยังชื่อที่เหมาะสมในแอพ Universal ฉันพบข้อผิดพลาด "ไม่รู้จักคลาส x ในไฟล์เครื่องมือสร้างส่วนติดต่อ" ในกรณีของฉันมันไม่มีอะไรในไฟล์ XIB หรือเป้าหมาย
ฉันได้คัดลอกไฟล์ aaLuminate-Info.plist ไปด้วยเหตุผลอื่น - นี่มีคีย์เก่า "ชื่อไฟล์ฐานปลายปากกา" ที่ตั้งเป็น MainWindow
ทันทีที่ฉันลบคีย์นี้มันจะแก้ไขปัญหาได้!
ในกรณีของฉันฉันได้รับข้อผิดพลาดนี้เพราะฉันพยายามบันทึกงานโดยการสร้างโครงการใหม่จากนั้นลบไฟล์ต้นฉบับหลายไฟล์และคัดลอกไฟล์ต้นฉบับที่มีชื่อเดียวกันจากโครงการทำงาน ฉันยังคัดลอกไฟล์ MainStoryBoard ของฉันซึ่งกำลังมองหา RootViewController ของฉัน อย่างไรก็ตามเมื่อฉันลบ RootViewController ดั้งเดิมแล้วเพิ่มลงใน RootViewController จากผลิตภัณฑ์ก่อนหน้านี้เห็นได้ชัดว่าการดำเนินการเพิ่มไฟล์ล้มเหลวในการ "ตรวจสอบ" กล่องเป้าหมายตามที่แนะนำข้างต้น โดยการเยี่ยมชม newley ทั้งหมดที่นำเข้าไฟล์ ".m" และตรวจสอบให้แน่ใจว่ามีการทำเครื่องหมายในช่องสมาชิกเป้าหมายทุกอย่างดี ฉันคิดว่าสิ่งที่เกิดขึ้นคือไฟล์สตอรีบอร์ดกำลังมองหาชั้นเรียนที่ "แยก" ออกจากลิงก์เนื่องจากไม่ได้เลือกสมาชิกภาพเป้าหมาย ตรวจสอบให้แน่ใจว่าไฟล์ที่จำเป็นสำหรับเป้าหมายนั้นได้รับการกำหนดในการเป็นสมาชิกเป้าหมายในเครื่องมือตรวจสอบไฟล์นั้นได้ทำการหลอกลวง ขอบคุณ Pat! (ดูด้านบน)
ในกรณีของฉันมันเป็นเพราะฉันประกาศ subclass ของ subclass ของเซลล์ UITableView ในไฟล์. h (การประกาศของ subclass ทั้งสองอยู่ในไฟล์. h เดียวกัน) แต่ลืมที่จะใช้งานว่างของ subclass ที่สองใน ไฟล์. m
อย่าลืมใช้คลาสย่อยใด ๆ ของคลาสย่อยที่คุณประกาศในไฟล์. h! ฟังดูง่าย แต่ลืมได้ง่ายเพราะ Xcode จะทำสิ่งนี้ให้คุณถ้าคุณกำลังทำงานกับหนึ่งคลาสต่อไฟล์. h / .m
ฉันมี "RateView ที่ไม่รู้จักในเครื่องมือสร้างอินเทอร์เฟซ" โดยที่ RateView เป็นคลาสย่อยของ UIView ฉันทิ้ง UIView ลงบนฉากสตอรี่บอร์ดของฉันและเปลี่ยนฟิลด์คลาสแบบกำหนดเองเป็น RateView ถึงกระนั้นข้อผิดพลาดนี้ก็ปรากฏขึ้น
ในการแก้ปัญหาฉันเปลี่ยนชื่อคลาสเป็น RateView2 และเปลี่ยนการอ้างอิงทั้งหมดให้ตรงกันยกเว้นฟิลด์คลาสแบบกำหนดเองของ UIView ข้อความแสดงข้อผิดพลาดยังคงปรากฏเป็นมาก่อนด้วย RateView เป็นคลาสที่ขาด สิ่งนี้ยืนยันว่าข้อความแสดงข้อผิดพลาดเกี่ยวข้องกับค่าของฟิลด์คลาสแบบกำหนดเอง ฉันเปลี่ยนค่านี้เป็น RateView2 และข้อความแสดงข้อผิดพลาดเปลี่ยนเป็น "ไม่ทราบคลาส RateView2 ในตัวสร้างส่วนต่อประสาน" ความคืบหน้าของแปลก ๆ
ในที่สุดฉันตรวจสอบไฟล์ซอร์สโค้ดเองใน File Inspector ที่นั่นฉันค้นพบว่าไฟล์ซอร์สโค้ด (ซึ่งฉันคัดลอกมาจากการสอน) ไม่เกี่ยวข้องกับเป้าหมายของฉัน กล่าวอีกนัยหนึ่งมันไม่มีการเป็นสมาชิกเป้าหมาย ฉันทำเครื่องหมายที่กล่องซึ่งทำให้ไฟล์ซอร์สของคลาสเป็นสมาชิกของแอปเป้าหมายและข้อความแสดงข้อผิดพลาดหายไป
ในกรณีของฉันฉันได้ลบคลาสที่เรียกว่า "viewController" โดยไม่ทราบว่าถูกเลือกด้วยตัวตรวจสอบตัวตนของสตอรี่บอร์ด (ภายใต้ 'คลาสที่กำหนดเอง' ขึ้นด้านบน)
คุณเพียงแค่เลือกคลาสที่ถูกต้องสำหรับตัวควบคุมมุมมองในฟิลด์คลาสแบบกำหนดเองของผู้ตรวจสอบตัวตนหรือเพิ่มคลาสใหม่ให้กับโครงการของคุณและเลือกคลาสนั้นเป็นคลาสแบบกำหนดเองของคุณ
ทำงานให้ฉัน!
ฉันเพิ่มไฟล์ภายใต้ Build Phase ในเป้าหมายและปัญหาได้รับการแก้ไข สำหรับขั้นตอนในการเพิ่มไฟล์ดูคำตอบของฉันที่:
สิ่งนี้ทำให้ฉันรู้สึกถั่วเล็กน้อยและไม่มีคำแนะนำใด ๆ ข้างต้นช่วยฉันกำจัดข้อผิดพลาดได้ โชคดีที่ฉันมีวัตถุ IB หนึ่งชิ้นเท่านั้นที่ใช้คลาสดังนั้นฉันจึงลบมันและเพิ่มกลับคืนมาพร้อมกับคลาสที่ระบุ ข้อผิดพลาดหายไป ...