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

Cocoa Touch Frameworks ที่ผลักดันแอพ iOS แบ่งปันรูปแบบที่ผ่านการพิสูจน์แล้วมากมายที่พบใน Mac แต่ถูกสร้างขึ้นโดยเน้นไปที่อินเตอร์เฟสแบบสัมผัสและการปรับให้เหมาะสมเป็นพิเศษ

30
UITableView - เปลี่ยนสีส่วนหัวของส่วน
ฉันจะเปลี่ยนสีของส่วนหัวของส่วนใน UITableView ได้อย่างไร แก้ไข : คำตอบที่จัดทำโดย DJ-Sควรได้รับการพิจารณาสำหรับ iOS 6 ขึ้นไป คำตอบที่ยอมรับนั้นล้าสมัย

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

28
ฉันจะเพิ่ม 1 วันใน NSDate ได้อย่างไร
โดยทั่วไปตามที่ชื่อกล่าว ฉันสงสัยว่าฉันจะเพิ่ม 1 วันได้NSDateอย่างไร ดังนั้นถ้าเป็น: 21st February 2011 มันจะกลายเป็น: 22nd February 2011 หรือถ้าเป็น: 31st December 2011 มันจะกลายเป็น: 1st January 2012.

4
ฉันจะเชื่อมโยงประเภทไฟล์กับแอปพลิเคชั่น iPhone ได้อย่างไร
ในเรื่องของการเชื่อมโยงแอพ iPhone กับประเภทไฟล์ ในคำถามที่ให้ข้อมูลนี้ฉันได้เรียนรู้ว่าแอปสามารถเชื่อมโยงกับโปรโตคอล URL ที่กำหนดเองได้ เกือบหนึ่งปีที่ผ่านมาและตั้งแต่นั้น Apple ได้เปิดตัว 'การสนับสนุนเอกสาร' ซึ่งจะไปอีกขั้นหนึ่งและอนุญาตให้แอปเชื่อมโยงกับประเภทไฟล์ มีจำนวนมากของการพูดคุยในเป็นเอกสารเกี่ยวกับวิธีการตั้งค่าของแอปพลิเคชันที่จะเปิดตัวอื่น ๆ ที่เหมาะสมเมื่อพบชนิดไฟล์ที่ไม่รู้จัก ซึ่งหมายความว่าการเชื่อมโยงไม่ได้ทำงานนอกกรอบสำหรับแอพใด ๆ เช่นเดียวกับการลงทะเบียนโปรโตคอล URL สิ่งนี้ทำให้ฉันมีคำถาม: มีแอประบบเช่น Safari หรือ Mail ที่ใช้งานระบบนี้สำหรับการเลือกแอพพลิเคชั่นที่เกี่ยวข้องหรือพวกเขาจะไม่ทำอะไรเหมือนเมื่อก่อน?
318 ios  cocoa-touch 

30
ปรับความสูงของ UILabel ขึ้นอยู่กับข้อความ
พิจารณาฉันมีข้อความต่อไปนี้ในUILabel(ข้อความไดนามิกบรรทัดยาว): เนื่องจากกองทัพมนุษย์ต่างดาวมีจำนวนมากกว่าทีมผู้เล่นจะต้องใช้โลกหลังสงครามเพื่อผลประโยชน์ของพวกเขาเช่นการหาที่กำบังหลังถังขยะเสาเสารถยนต์ซากปรักหักพังและวัตถุอื่น ๆ ฉันต้องการปรับขนาดUILabel'sความสูงเพื่อให้ข้อความสามารถพอดีได้ฉันใช้คุณสมบัติต่อไปนี้UILabelเพื่อทำให้ข้อความภายในมีการตัดคำ myUILabel.lineBreakMode = UILineBreakModeWordWrap; myUILabel.numberOfLines = 0; โปรดแจ้งให้เราทราบหากฉันไม่ได้มุ่งหน้าไปในทิศทางที่ถูกต้อง ขอบคุณ


6
สร้าง UUID บน iOS จาก Swift
ในแอป iOS Swift ของฉันฉันต้องการสร้างสตริงUUID ( GUID ) แบบสุ่มเพื่อใช้เป็นคีย์ตารางและข้อมูลโค้ดนี้ดูเหมือนว่าจะทำงาน: let uuid = CFUUIDCreateString(nil, CFUUIDCreate(nil)) ปลอดภัยไหม หรืออาจจะมีวิธีที่ดีกว่า (แนะนำ)?

30
-didSelectRowAtIndexPath: ไม่ถูกเรียก
ฉันกำลังเขียนแอพ iOS ด้วยมุมมองตารางภายในมุมมองแท็บ ในตัวฉันUITableViewControllerฉันนำไปใช้-tableView:didSelectRowAtIndexPath:แต่เมื่อฉันเลือกแถวที่รันไทม์วิธีการจะไม่ถูกเรียก มุมมองตารางกำลังถูกบรรจุแม้ว่าดังนั้นฉันรู้ว่าวิธีการ tableView อื่น ๆ ในตัวควบคุมของฉันจะถูกเรียก ใครบ้างมีความคิดใด ๆ ที่ฉันอาจทำให้ผิดเพื่อให้สิ่งนี้เกิดขึ้นได้?

23
คุณโหลด UITableViewCells ที่กำหนดเองจากไฟล์ Xib ได้อย่างไร
คำถามนั้นง่าย: คุณจะโหลด custom UITableViewCellจากไฟล์ Xib ได้อย่างไร การทำเช่นนั้นช่วยให้คุณใช้ตัวสร้างส่วนต่อประสานเพื่อออกแบบเซลล์ของคุณ เห็นได้ชัดว่าคำตอบนั้นไม่ง่ายเนื่องจากปัญหาการจัดการหน่วยความจำ เธรดนี้กล่าวถึงปัญหาและแนะนำวิธีแก้ไข แต่เป็นการนำเสนอ NDA ล่วงหน้าและไม่มีรหัส นี่คือหัวข้อยาวที่กล่าวถึงปัญหาโดยไม่ต้องให้คำตอบที่ชัดเจน นี่คือรหัสที่ฉันใช้: static NSString *CellIdentifier = @"MyCellIdentifier"; MyCell *cell = (MyCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { NSArray *nib = [[NSBundle mainBundle] loadNibNamed:CellIdentifier owner:self options:nil]; cell = (MyCell *)[nib objectAtIndex:0]; } ในการใช้รหัสนี้ให้สร้าง MyCell.m / .h ซึ่งเป็นคลาสย่อยใหม่UITableViewCellและเพิ่มIBOutletsสำหรับส่วนประกอบที่คุณต้องการ จากนั้นสร้างไฟล์ …

24
การสร้างปุ่มลูกศรซ้าย (เช่นสไตล์ "ย้อนกลับ" ของ UINavigationBar) บน UIToolbar
ฉันชอบที่จะสร้าง "กลับ" UIToolbarลูกศรซ้ายฝาปุ่มใน เท่าที่ฉันสามารถบอกได้วิธีเดียวที่จะได้รับหนึ่งในนั้นคือออกจากUINavigationControllerการตั้งค่าเริ่มต้นและใช้หนึ่งรายการสำหรับรายการแถบด้านซ้าย แต่ไม่มีวิธีที่ฉันสามารถค้นหาเพื่อสร้างเป็นUIBarButtonItemดังนั้นฉันไม่สามารถสร้างหนึ่งในมาตรฐานUIToolbarแม้ว่าพวกเขาจะคล้ายกันมากกับUINavigationBars ฉันสามารถสร้างมันด้วยภาพปุ่มด้วยตนเอง แต่ฉันไม่สามารถหาภาพต้นฉบับได้ทุกที่ พวกมันมีขอบอัลฟ่า - ช่องดังนั้นภาพหน้าจอและการตัดจะไม่ได้ผลลัพธ์ที่หลากหลายมากนัก มีแนวคิดใดที่นอกเหนือจากการสกรีนภาพสำหรับทุกขนาดและชุดสีที่ฉันตั้งใจจะใช้? ปรับปรุง: STOP UINavigationBarกรุณาหลบคำถามและบอกว่าฉันไม่ควรจะถามนี้และควรจะใช้ แอพของฉันคือ Instapaper Pro มันแสดงเฉพาะแถบเครื่องมือด้านล่าง (เพื่อประหยัดพื้นที่และเพิ่มพื้นที่เนื้อหาที่อ่านได้สูงสุด) และฉันต้องการวางปุ่มย้อนกลับรูปลูกศรซ้ายที่ด้านล่าง บอกฉันว่าฉันไม่ควรต้องทำสิ่งนี้ไม่ใช่คำตอบและแน่นอนไม่สมควรได้รับรางวัล

30
ได้รับสัญญาณ EXC_BAD_ACCESS
เมื่อปรับใช้แอปพลิเคชันไปยังอุปกรณ์โปรแกรมจะออกหลังจากไม่กี่รอบด้วยข้อผิดพลาดต่อไปนี้: Program received signal: "EXC_BAD_ACCESS". โปรแกรมทำงานได้โดยไม่มีปัญหาใด ๆ บน iPhone simulator มันจะทำการดีบั๊กและรันตราบใดที่ฉันทำตามคำแนะนำทีละรายการ ทันทีที่ฉันปล่อยให้มันทำงานอีกครั้งฉันจะชนEXC_BAD_ACCESSสัญญาณ ในกรณีนี้มันเป็นข้อผิดพลาดในรหัส accelerometer มันจะไม่ดำเนินการภายในเครื่องจำลองซึ่งเป็นสาเหตุที่ทำให้ไม่เกิดข้อผิดพลาดใด ๆ อย่างไรก็ตามมันจะดำเนินการปรับใช้ครั้งเดียวกับอุปกรณ์ คำตอบสำหรับคำถามนี้ส่วนใหญ่จะจัดการกับEXC_BAD_ACCESSข้อผิดพลาดทั่วไปดังนั้นฉันจะปล่อยให้สิ่งนี้เปิดเป็น catch-all สำหรับข้อผิดพลาด Bad Access ที่น่ากลัว EXC_BAD_ACCESSโดยทั่วไปจะถูกโยนลงเนื่องจากการเข้าถึงหน่วยความจำที่ผิดกฎหมาย คุณสามารถค้นหาข้อมูลเพิ่มเติมได้จากคำตอบด้านล่าง คุณเคยพบEXC_BAD_ACCESSสัญญาณมาแล้วและคุณรับมือกับมันอย่างไร
290 ios  cocoa-touch 

15
การล้าง NSUserDefaults
ฉันใช้+[NSUserDefaults standardUserDefaults]เพื่อจัดเก็บการตั้งค่าแอปพลิเคชัน สิ่งนี้ประกอบด้วยค่าสตริงประมาณโหล เป็นไปได้ไหมที่จะลบค่าเหล่านี้อย่างถาวรแทนที่จะตั้งเป็นค่าเริ่มต้น?

25
วิธีที่เหมาะสมในการออกจากแอปพลิเคชั่น iPhone?
ฉันกำลังเขียนโปรแกรมแอพ iPhone และฉันจำเป็นต้องบังคับให้ออกเนื่องจากการกระทำของผู้ใช้บางอย่าง หลังจากล้างหน่วยความจำที่แอพจัดสรรแล้ววิธีการที่เหมาะสมในการโทรออกเพื่อยกเลิกแอปพลิเคชันคืออะไร


9
layoutSubviews เรียกว่าเมื่อใด
ฉันมีมุมมองแบบกำหนดเองที่ไม่ได้รับlayoutSubviewข้อความระหว่างการเคลื่อนไหว ฉันมีมุมมองที่เต็มหน้าจอ มีมุมมองย่อยที่กำหนดเองที่ด้านล่างของหน้าจอที่ปรับขนาดได้อย่างถูกต้องในตัวสร้างส่วนต่อประสานหากฉันเปลี่ยนความสูงของแถบนำทาง layoutSubviewsถูกเรียกเมื่อมุมมองถูกสร้างขึ้น แต่จะไม่เกิดขึ้นอีก มุมมองย่อยของฉันวางไว้อย่างถูกต้อง ถ้าฉันปิดแถบสถานะระหว่างการโทรระบบlayoutSubviewsจะไม่เรียกมุมมองย่อยเลยแม้ว่ามุมมองหลักจะทำให้การปรับขนาดเป็นภาพเคลื่อนไหว ภายใต้สถานการณ์ใดที่layoutSubviewsเรียกว่าจริง? ฉันได้autoresizesSubviewsตั้งค่าเป็นNOสำหรับมุมมองที่กำหนดเองของฉัน และในตัวสร้างอินเทอร์เฟซฉันมีเสาด้านบนและด้านล่างและชุดลูกศรแนวตั้ง อีกส่วนหนึ่งของปริศนาคือหน้าต่างต้องเป็นกุญแจ: [window makeKeyAndVisible]; มิฉะนั้นมุมมองย่อยจะไม่ถูกปรับขนาดโดยอัตโนมัติ

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