คำถามติดแท็ก objective-c

แท็กนี้ควรใช้กับคำถามที่เกี่ยวกับคุณสมบัติ Objective-C หรือขึ้นอยู่กับรหัสในภาษา ควรใช้แท็ก [cocoa] และ [cocoa-touch] เพื่อสอบถามเกี่ยวกับกรอบหรือคลาสของ Apple ใช้แท็กที่เกี่ยวข้อง [ios], [macos], [apple-watch] และ [tvos] สำหรับปัญหาเฉพาะของแพลตฟอร์มเหล่านั้น

6
ฉันจะใช้ NSTimer ได้อย่างไร
ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันจะใช้อย่างไรNSTimer? ทุกคนสามารถให้คำแนะนำทีละขั้นตอนกับฉันได้ไหม

8
ควรใช้ NSInteger vs. int เมื่อใด
เมื่อใดที่ฉันควรใช้NSIntegervs. int เมื่อพัฒนาสำหรับ iOS ฉันเห็นในโค้ดตัวอย่างของ Apple ที่ใช้NSInteger(หรือNSUInteger ) เมื่อส่งค่าเป็นอาร์กิวเมนต์ไปยังฟังก์ชันหรือส่งคืนค่าจากฟังก์ชัน - (NSInteger)someFunc;... - (void)someFuncWithInt:(NSInteger)value;... แต่ภายในฟังก์ชั่นพวกเขาใช้intเพื่อติดตามค่า for (int i; i < something; i++) ... int something; something += somethingElseThatsAnInt; ... ฉันอ่านแล้ว (ได้รับการบอก) ว่าNSIntegerเป็นวิธีที่ปลอดภัยในการอ้างอิงจำนวนเต็มในสภาพแวดล้อม 64- บิตหรือ 32- บิตดังนั้นทำไมจึงใช้งานintได้ทั้งหมด

8
ใช้การจัดสรร init แทนของใหม่
การเรียนรู้ Objective-C และการอ่านโค้ดตัวอย่างฉันสังเกตว่ามักจะสร้างวัตถุโดยใช้วิธีนี้: SomeObject *myObject = [[SomeObject alloc] init]; แทน: SomeObject *myObject = [SomeObject new]; มีเหตุผลสำหรับสิ่งนี้เพราะฉันได้อ่านว่าพวกเขาจะเทียบเท่า?
344 objective-c  oop 

17
วิธีปรับขนาด UIImageView ให้เป็นสัดส่วนได้อย่างไร
ฉันมี UIImageView และมีวัตถุประสงค์เพื่อลดขนาดตามสัดส่วนโดยให้ความสูงหรือความกว้าง UIImage *image = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://farm4.static.flickr.com/3092/2915896504_a88b69c9de.jpg"]]]; UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; //Add image view [self.view addSubview:imageView]; //set contentMode to scale aspect to fit imageView.contentMode = UIViewContentModeScaleAspectFit; //change width of frame CGRect frame = imageView.frame; frame.size.width = 100; imageView.frame = frame; ภาพได้รับการปรับขนาด แต่ตำแหน่งไม่ได้อยู่ที่มุมบนซ้าย วิธีที่ดีที่สุดในการปรับขนาดภาพ / …

10
สร้างซิงเกิลตันโดยใช้ dispatch_once ของ GCD ใน Objective-C
หากคุณสามารถกำหนดเป้าหมาย iOS 4.0 ขึ้นไป การใช้ GCD เป็นวิธีที่ดีที่สุดในการสร้างซิงเกิลตันใน Objective-C (ปลอดภัยไหม) + (instancetype)sharedInstance { static dispatch_once_t once; static id sharedInstance; dispatch_once(&once, ^{ sharedInstance = [[self alloc] init]; }); return sharedInstance; }

28
รับการตอบกลับครั้งแรกในปัจจุบันโดยไม่ต้องใช้ API ส่วนตัว
ฉันส่งแอปของฉันเล็กน้อยเมื่อสัปดาห์ที่แล้วและได้รับอีเมลปฏิเสธที่หวั่นไหวในวันนี้ มันบอกฉันว่าแอปของฉันไม่สามารถยอมรับได้เพราะฉันใช้ API ที่ไม่ใช่แบบสาธารณะ โดยเฉพาะมันพูดว่า API ที่ไม่ใช่สาธารณะที่รวมอยู่ในแอปพลิเคชันของคุณคือ firstResponder ตอนนี้การเรียก API ที่กระทำผิดนั้นเป็นวิธีแก้ปัญหาที่ฉันพบที่นี่ใน SO: UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow]; UIView *firstResponder = [keyWindow performSelector:@selector(firstResponder)]; ฉันจะรับการตอบกลับครั้งแรกบนหน้าจอได้อย่างไร ฉันกำลังมองหาวิธีที่จะไม่ปฏิเสธแอปของฉัน

30
คุณสมบัติที่ซ่อนของ Xcode
ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ด้วยมือใหม่จำนวนมากสู่ Xcode ฉันมั่นใจว่ามีเคล็ดลับและเทคนิค Xcode มากมายที่จะแบ่งปัน คุณเป็นอะไร


7
แปลง NSURL เป็น NSString
ฉันมีแอพที่ผู้ใช้สามารถเลือกรูปภาพได้จากรูปภาพแอพในตัวหรือจากคลังรูปภาพ iphone ผมใช้โอกาสวัตถุที่มีคุณสมบัติการบันทึกNSStringimagePath ตอนนี้ในกรณีของภาพในตัวแอพพลิเคฉันจะได้รับชื่อไฟล์เป็นบันทึกในNSString [occasion imagePath]แต่ในกรณีที่ 2 ที่ผู้ใช้เลือกรูปแบบคลังภาพฉันได้รับสิ่งNSURLที่ฉันต้องการแปลงเป็นNSStringเพื่อให้สามารถบันทึกไว้ใน[occasion imagePath] มันเป็นไปได้ที่จะแปลงNSURLไปยังNSString?

15
ไฟล์ค่าคงที่ส่วนกลางใน Swift
ในโครงการ Objective-C NSUserDefaultsของฉันฉันมักจะใช้ไฟล์คงที่ทั่วโลกเพื่อสิ่งที่ร้านค้าเช่นชื่อการแจ้งเตือนและปุ่มสำหรับ ดูเหมือนว่า: @interface GlobalConstants : NSObject extern NSString *someNotification; @end @implementation GlobalConstants NSString *someNotification = @"aaaaNotification"; @end ฉันจะทำสิ่งเดียวกันใน Swift ได้อย่างไร
336 ios  objective-c  swift 

7
การจำลองพฤติกรรมแบบฟิตโดยใช้ข้อ จำกัด AutoLayout ใน Xcode 6
ฉันต้องการใช้ AutoLayout เพื่อปรับขนาดและเลย์เอาต์มุมมองในลักษณะที่ทำให้ระลึกถึงโหมดเนื้อหาแบบพอดีของ UIImageView ฉันมีมุมมองย่อยภายในมุมมองคอนเทนเนอร์ในตัวสร้างส่วนต่อประสาน มุมมองย่อยมีอัตราส่วนภาพโดยธรรมชาติซึ่งฉันต้องการเคารพ ขนาดของมุมมองคอนเทนเนอร์ไม่เป็นที่รู้จักจนกระทั่งรันไทม์ หากอัตราส่วนมุมมองของคอนเทนเนอร์กว้างกว่ามุมมองย่อยฉันต้องการให้ความสูงของมุมมองย่อยเท่ากับความสูงของมุมมองพาเรนต์ หากอัตราส่วนมุมมองของคอนเทนเนอร์สูงกว่ามุมมองย่อยฉันต้องการความกว้างของมุมมองย่อยเท่ากับความกว้างของมุมมองพาเรนต์ ในกรณีใดกรณีหนึ่งฉันต้องการให้มุมมองย่อยจัดกึ่งกลางแนวนอนและแนวตั้งภายในมุมมองคอนเทนเนอร์ มีวิธีใดบ้างที่จะบรรลุเป้าหมายนี้โดยใช้ข้อ จำกัด AutoLayout ใน Xcode 6 หรือในเวอร์ชันก่อนหน้า? เป็นการดีที่จะใช้ตัวสร้างส่วนต่อประสาน แต่ถ้าไม่ใช่ก็เป็นไปได้ที่จะกำหนดข้อ จำกัด ดังกล่าวโดยทางโปรแกรม

26
Singleton Objective-C ของฉันควรมีลักษณะอย่างไร [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ วิธีการเข้าถึงเดี่ยวของฉันมักจะแตกต่างจาก: static MyClass *gInstance = NULL; + (MyClass *)instance { @synchronized(self) { if (gInstance == NULL) gInstance = [[self alloc] init]; } return(gInstance); } ฉันจะทำอะไรเพื่อปรับปรุงสิ่งนี้

30
ไม่พบไลบรารี่สำหรับ -lPods
ฉันพบข้อผิดพลาดเมื่อเก็บถาวรโครงการ นี่คือสภาพแวดล้อมของฉัน Mac OS Lion Xcode 4.3.1 iOS SDK 5.1 เป้าหมายการปรับใช้โครงการคือ: IPHONEOS_DEPLOYMENT_TARGET 3.2 ข้อผิดพลาดแสดง: ld: library not found for -lPods clang: error: linker command failed with exit code 1 (use -v to see invocation) ฉันเดา Pods คือ CocoaPods ที่ฉันใช้ในการจัดการการพึ่งพาโครงการ XCode https://github.com/CocoaPods/CocoaPods นี่คือ Podfile ของฉัน platform :ios dependency 'libPusher', '1.1' ฉันไม่แน่ใจว่าข้อผิดพลาดหมายถึงอะไร

10
คุณสมบัติ NSString: คัดลอกหรือเก็บ?
สมมติว่าฉันได้เรียนที่เรียกว่าSomeClassมีstringชื่อคุณสมบัติ: @interface SomeClass : NSObject { NSString* name; } @property (nonatomic, retain) NSString* name; @end ฉันเข้าใจว่าชื่ออาจได้รับมอบหมายNSMutableStringซึ่งในกรณีนี้อาจนำไปสู่พฤติกรรมที่ผิดพลาด สำหรับสตริงโดยทั่วไปก็คือมักจะเป็นความคิดที่ดีที่จะใช้copyแอตทริบิวต์แทนretain? คุณสมบัติ "คัดลอก" ในทางใดทางหนึ่งที่มีประสิทธิภาพน้อยกว่าคุณสมบัติ "เก็บรักษา -ed" หรือไม่?


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