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

Cocoa เป็นกรอบการพัฒนาแอปพลิเคชันของ Apple สำหรับ macOS ซึ่งประกอบด้วย Foundation, Application Kit และ Core Data ใช้แท็ก "cocoa-touch" สำหรับคำถาม iOS

30
จะตรวจสอบการเชื่อมต่ออินเทอร์เน็ตที่ใช้งานบน iOS หรือ macOS ได้อย่างไร?
ฉันต้องการตรวจสอบเพื่อดูว่าฉันมีการเชื่อมต่ออินเทอร์เน็ตบน iOS โดยใช้ไลบรารีCocoa Touchหรือบน macOS โดยใช้ห้องสมุดCocoa NSURLฉันมาด้วยวิธีการที่จะทำเช่นนี้ต่อ A วิธีที่ฉันทำดูเหมือนจะไม่น่าเชื่อถือเลยสักนิด (เพราะแม้กระทั่ง Google อาจสักวันหนึ่งและพึ่งพาบุคคลที่สามก็ดูไม่ดี) และในขณะที่ฉันสามารถตรวจสอบเพื่อดูการตอบสนองจากเว็บไซต์อื่น ๆ ถ้า Google ไม่ตอบสนอง ดูเหมือนจะสิ้นเปลืองและมีค่าใช้จ่ายที่ไม่จำเป็นในใบสมัครของฉัน - (BOOL) connectedToInternet { NSString *URLString = [NSString stringWithContentsOfURL:[NSURL URLWithString:@"http://www.google.com"]]; return ( URLString != NULL ) ? YES : NO; } เป็นสิ่งที่ฉันทำไม่ดี (ไม่พูดถึงstringWithContentsOfURLถูกคัดค้านใน iOS 3.0 และ macOS 10.4) และถ้าเป็นเช่นนั้นเป็นวิธีที่ดีกว่าที่จะบรรลุสิ่งนี้?

30
Xcode - วิธีการแก้ไข 'NSUnknownKeyException' เหตุผล: …คลาสนี้ไม่ได้เป็นค่าคีย์ตามมาตรฐานการเข้ารหัสสำหรับคีย์ X "ข้อผิดพลาด?
ฉันกำลังพยายามเชื่อมโยงUILabelกับสิ่งที่IBOutletสร้างขึ้นในชั้นเรียนของฉัน แอปพลิเคชันของฉันทำงานล้มเหลวโดยมีข้อผิดพลาดดังต่อไปนี้ สิ่งนี้หมายความว่า? ฉันจะแก้ไขได้อย่างไร *** แอปสิ้นสุดเนื่องจากข้อยกเว้นที่ไม่ได้ตรวจสอบ 'NSUnknownKeyException' เหตุผล: '[<UIViewController 0x6e36ae0> setValue: forUndefinedKey:]: คลาสนี้ไม่ใช่ค่าคีย์ที่เข้ารหัสตามคีย์ XXX'

14
ค่าคงที่ใน Objective-C
ฉันกำลังพัฒนาแอปพลิเคชั่นCocoaและฉันใช้ค่าคงNSStringที่เป็นวิธีเก็บชื่อคีย์สำหรับค่ากำหนดของฉัน ฉันเข้าใจว่านี่เป็นความคิดที่ดีเพราะช่วยให้เปลี่ยนคีย์ได้ง่ายหากจำเป็น นอกจากนี้ยังเป็นแนวคิดทั้งหมดที่ 'แยกข้อมูลของคุณออกจากตรรกะของคุณ อย่างไรก็ตามมีวิธีที่ดีในการกำหนดค่าคงที่เหล่านี้หนึ่งครั้งสำหรับการสมัครทั้งหมดหรือไม่? ฉันแน่ใจว่ามีวิธีที่ง่ายและชาญฉลาด แต่ตอนนี้ชั้นเรียนของฉันเพิ่งกำหนดใหม่ที่พวกเขาใช้


16
@class เทียบกับ #import
ฉันเข้าใจว่าควรใช้การประกาศไปข้างหน้าในเหตุการณ์ ClassA ต้องรวมส่วนหัว ClassB และ ClassB ต้องรวมส่วนหัว ClassA เพื่อหลีกเลี่ยงการรวมแบบวน ฉันยังเข้าใจด้วยว่า#importa เป็นวิธีที่ง่ายifndefเพื่อให้การรวมเกิดขึ้นเพียงครั้งเดียว คำถามของฉันคือ: เมื่อไหร่จะใช้#importและเมื่อไหร่จะใช้@class? บางครั้งถ้าฉันใช้การ@classประกาศฉันเห็นคำเตือนคอมไพเลอร์ทั่วไปเช่นต่อไปนี้: warning: receiver 'FooController' is a forward class and corresponding @interface may not exist. ชอบที่จะเข้าใจสิ่งนี้จริง ๆ เพียงแค่ลบการ@classประกาศไปข้างหน้าและทิ้ง#importคำเตือนที่คอมไพเลอร์ให้ฉัน

7
Cocoa Autolayout: การแฮ็กเนื้อหากับการจัดลำดับความสำคัญความต้านทานการบีบอัดเนื้อหา
ฉันไม่พบคำตอบที่ชัดเจนในเอกสารของ Apple เกี่ยวกับ Cocoa Autolayout เกี่ยวกับความแตกต่างระหว่างการกอดเนื้อหาและการต่อต้านการบีบอัด ใครสามารถอธิบายประเพณีและความแตกต่างได้บ้าง
643 cocoa  autolayout 





13
วิธีการพิมพ์ชื่อวิธีการและหมายเลขบรรทัดและปิดการใช้งาน NSLog เงื่อนไข?
ฉันกำลังทำการนำเสนอเกี่ยวกับการดีบักใน Xcode และต้องการรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ NSLog อย่างมีประสิทธิภาพ โดยเฉพาะฉันมีคำถามสองข้อ: มีวิธีการอย่างง่ายดาย NSLog ชื่อ / หมายเลขบรรทัดของวิธีการในปัจจุบัน? มีวิธี "ปิดการใช้งาน" NSLogs ทั้งหมดได้อย่างง่ายดายก่อนที่จะรวบรวมรหัสการปล่อยหรือไม่?


8
เป็นไปได้ที่โครงสร้าง NSLog C (เช่น CGRect หรือ CGPoint)
ฉันต้องการที่จะสามารถแก้ปัญหาโครงสร้าง C โดยไม่ต้องพิมพ์ทุกคุณสมบัติที่พวกเขาประกอบด้วย เช่นฉันต้องการที่จะสามารถทำอะไรเช่นนี้: CGPoint cgPoint = CGPointMake(0,0); NSLog(@"%@",cgPoint); เห็นได้ชัดว่า '% @' ไม่ทำงานดังนั้นคำถาม


25
มีข้อผิดพลาดเกิดขึ้นใน NSOrderedSet ที่สร้างขึ้น accessors
ในแอป Lion ของฉันฉันมีโมเดลข้อมูลนี้: ความสัมพันธ์subitemsภายในได้รับคำสั่งItem Xcode 4.1 (สร้าง 4B110) ได้สร้างสำหรับฉันไฟล์Item.h, Item.m, และSubItem.hSubItem.h นี่คือเนื้อหา (สร้างอัตโนมัติ) ของItem.h: #import <Foundation/Foundation.h> #import <CoreData/CoreData.h> @class SubItem; @interface Item : NSManagedObject { @private } @property (nonatomic, retain) NSString * name; @property (nonatomic, retain) NSOrderedSet *subitems; @end @interface Item (CoreDataGeneratedAccessors) - (void)insertObject:(SubItem *)value inSubitemsAtIndex:(NSUInteger)idx; - (void)removeObjectFromSubitemsAtIndex:(NSUInteger)idx; - (void)insertSubitems:(NSArray …
364 cocoa  core-data  xcode4 

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