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

iOS เป็นระบบปฏิบัติการมือถือที่รันบน Apple iPhone, iPod touch และ iPad ใช้แท็กนี้ [ios] สำหรับคำถามที่เกี่ยวข้องกับการเขียนโปรแกรมบนแพลตฟอร์ม iOS ใช้แท็กที่เกี่ยวข้อง [object-c] และ [swift] สำหรับปัญหาเฉพาะสำหรับภาษาการเขียนโปรแกรมเหล่านั้น

6
วิธีสร้าง UIImage 1x1 สีบน iPhone แบบไดนามิก
ฉันต้องการสร้าง 1x1 UIImage แบบไดนามิกโดยใช้ UIColor ฉันสงสัยว่าสิ่งนี้สามารถทำได้อย่างรวดเร็วด้วย Quartz2d และฉันกำลังมองหาเอกสารที่พยายามทำความเข้าใจพื้นฐาน อย่างไรก็ตามดูเหมือนว่ามีข้อผิดพลาดที่อาจเกิดขึ้นมากมาย: ไม่ระบุจำนวนบิตและไบต์ต่อสิ่งต่าง ๆ อย่างถูกต้อง, ไม่ระบุแฟล็กที่ถูกต้อง, ไม่ปล่อยข้อมูลที่ไม่ได้ใช้ ฯลฯ สิ่งนี้จะทำได้อย่างปลอดภัยด้วย Quartz 2d (หรือวิธีอื่นที่ง่ายกว่านั้น) ได้อย่างไร?

12
ข้อผิดพลาด: CUICatalog: ระบุชื่อเนื้อหาไม่ถูกต้อง: (null) หรือตัวคูณมาตราส่วนไม่ถูกต้อง: 2.000000
TableViewApplication[1458:70b] CUICatalog: Invalid asset name supplied: (null), or invalid scale factor: 2.000000 รับคำเตือนนี้ขณะทำงานกับ TableViewController วิธีแก้ไขข้อผิดพลาดนี้และบล็อกใดได้รับผลกระทบ
120 ios  objective-c  xcode5 

3
จะรับวัตถุ Core Data จาก Object ID เฉพาะได้อย่างไร
ฉันสามารถรับ ID ของวัตถุใน Core Data ได้อย่างง่ายดายโดยใช้รหัสต่อไปนี้: NSManagedObjectID *moID = [managedObject objectID]; อย่างไรก็ตามมีวิธีนำออบเจ็กต์ออกจากที่เก็บข้อมูลหลักโดยการให้ ID อ็อบเจ็กต์เฉพาะหรือไม่ ฉันรู้ว่าฉันสามารถทำได้โดยใช้ NSFetchRequest เช่นนี้: NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; NSEntityDescription *entity = [NSEntityDescription entityForName:@"Document" inManagedObjectContext:managedObjectContext]; [fetchRequest setEntity:entity]; NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(objectID = %@)", myObjectID]; [fetchRequest setPredicate:predicate]; อย่างไรก็ตามฉันต้องการดำเนินการในลักษณะที่ไม่ได้เริ่มต้นคำขอดึงข้อมูลของตัวเอง ความคิดใด ๆ ?

25
Xcode ไม่เห็นอุปกรณ์ iOS ของฉัน แต่ iTunes เห็น
ฉันมีปัญหาแปลก ๆ ฉันมี iPad ที่ติดตั้ง iOS 5.0.1 (9A405) และ iOS SDK 5.0.1 พร้อม Xcode 4.2 (Build 4C199) บน Mac ของฉัน Xcode ไม่เห็นอุปกรณ์ของฉัน มันบอกว่า "อุปกรณ์ iOS" ไม่ใช่ "iPad ของ Sauron" ตามปกติ (ฉันแน่ใจว่าอุปกรณ์นั้นเชื่อมต่ออยู่เพราะฉันเห็นใน iTunes) Xcode ปฏิเสธที่จะเริ่มแอปพลิเคชันของฉันบนอุปกรณ์ มันบอกว่า: "Xcode ไม่สามารถทำงานโดยใช้อุปกรณ์ที่เลือกไม่มีอุปกรณ์ iOS ที่จัดเตรียมไว้พร้อมใช้งานกับ iOS เวอร์ชันที่เข้ากันได้เชื่อมต่ออุปกรณ์ iOS ที่มี iOS เวอร์ชันล่าสุดเพียงพอที่จะเรียกใช้แอปพลิเคชันของคุณหรือเลือกโปรแกรมจำลอง iOS เป็นปลายทาง" Xcode เห็น iPad …
120 iphone  ios  xcode  ipad  provisioning 

15
UIRefreshControl - startRefreshing ไม่ทำงานเมื่อ UITableViewController อยู่ใน UINavigationController
ฉันได้ตั้งค่า UIRefreshControl ใน UITableViewController ของฉัน (ซึ่งอยู่ใน UINavigationController) และทำงานได้ตามที่คาดไว้ (เช่นการดึงลงจะทำให้เหตุการณ์ที่ถูกต้อง) อย่างไรก็ตามหากฉันเรียกใช้beginRefreshingวิธีการอินสแตนซ์โดยทางโปรแกรมบนตัวควบคุมการรีเฟรชเช่น: [self.refreshControl beginRefreshing]; ไม่มีอะไรเกิดขึ้น. มันควรจะเคลื่อนไหวลงและแสดงสปินเนอร์ endRefreshingวิธีการทำงานอย่างถูกต้องเมื่อผมเรียกว่าหลังจากการฟื้นฟู ฉันสร้างโครงการต้นแบบพื้นฐานด้วยพฤติกรรมนี้และทำงานได้อย่างถูกต้องเมื่อ UITableViewController ของฉันถูกเพิ่มลงในตัวควบคุมมุมมองรูทของผู้รับมอบสิทธิ์โดยตรงเช่น: self.viewController = tableViewController; self.window.rootViewController = self.viewController; แต่ถ้าฉันจะเพิ่มtableViewControllerการ UINavigationController เป็นครั้งแรกแล้วเพิ่มควบคุมการนำเป็นrootViewControllerที่beginRefreshingทำงานของวิธีการไม่ได้ เช่น UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:tableViewController]; self.viewController = navController; self.window.rootViewController = self.viewController; ความรู้สึกของฉันคือมีบางอย่างเกี่ยวข้องกับลำดับชั้นมุมมองที่ซ้อนกันภายในตัวควบคุมการนำทางไม่ได้เล่นได้ดีกับตัวควบคุมการทบทวน - ข้อเสนอแนะใด ๆ ? ขอบคุณ

6
การผูกตามเงื่อนไข: หากปล่อยให้เกิดข้อผิดพลาด - ตัวเริ่มต้นสำหรับการผูกตามเงื่อนไขต้องมีประเภทที่เป็นทางเลือก
ฉันกำลังพยายามลบแถวจากแหล่งข้อมูลและโค้ดบรรทัดต่อไปนี้: if let tv = tableView { ทำให้เกิดข้อผิดพลาดต่อไปนี้: Initializer สำหรับการเชื่อมโยงตามเงื่อนไขต้องมีประเภทที่เป็นทางเลือกไม่ใช่ UITableView นี่คือรหัสเต็ม: // Override to support editing the table view. func tableView(tableView: UITableView, commitEditingStyle editingStyle:UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) { if editingStyle == .Delete { // Delete the row from the data source if let tv = tableView { myData.removeAtIndex(indexPath.row) tv.deleteRowsAtIndexPaths([indexPath], …

15
UICollectionView เซลล์แบบเต็มความกว้างอนุญาตให้กำหนดค่าความสูงแบบไดนามิกอัตโนมัติหรือไม่
ในแนวตั้งUICollectionView, มันเป็นไปได้ที่จะมีเซลล์เต็มความกว้างแต่อนุญาตให้สูงแบบไดนามิกจะถูกควบคุมโดยautolayout ? นี่อาจทำให้ฉันรู้สึกว่าเป็น "คำถามที่สำคัญที่สุดใน iOS ที่ไม่มีคำตอบที่ดีจริงๆ" สำคัญ: โปรดทราบว่าใน 99% ของกรณีเพื่อให้ได้เซลล์ที่มีความกว้างเต็ม + การกำหนดค่าความสูงแบบไดนามิกอัตโนมัติเพียงแค่ใช้มุมมองตาราง มันง่ายมาก ตัวอย่างของตำแหน่งที่คุณต้องการมุมมองคอลเลคชันคืออะไร? มุมมองคอลเลคชันมีประสิทธิภาพมากกว่าการดูตารางอย่างไม่น่าเชื่อ ตัวอย่างที่ตรงไปตรงมาอย่างหนึ่งที่คุณต้องใช้มุมมองคอลเลคชันเพื่อให้ได้เซลล์แบบเต็มความกว้าง + ความสูงแบบไดนามิกอัตโนมัติ หากคุณเคลื่อนไหวระหว่างสองเค้าโครงในมุมมองคอลเลกชัน ตัวอย่างเช่นระหว่างเค้าโครงคอลัมน์ 1 ถึง 2 เมื่ออุปกรณ์หมุน นั่นเป็นสำนวนทั่วไปและปกติใน iOS น่าเสียดายที่สามารถทำได้โดยการแก้ปัญหาที่เกิดขึ้นใน QA นี้เท่านั้น : - /

12
แผ่นการตรวจจับถูกปิดบน iOS 13
ก่อน iOS 13 มีการนำเสนอตัวควบคุมมุมมองที่ใช้เพื่อครอบคลุมทั้งหน้าจอ และเมื่อปิดviewDidAppearฟังก์ชันพาเรนต์วิวคอนโทรลเลอร์จะถูกเรียกใช้งาน ตอนนี้ iOS 13 จะนำเสนอตัวควบคุมมุมมองเป็นแผ่นงานเป็นค่าเริ่มต้นซึ่งหมายความว่าการ์ดจะครอบคลุมตัวควบคุมมุมมองที่อยู่เบื้องหลังบางส่วนซึ่งหมายความว่าviewDidAppearจะไม่มีการเรียกใช้เนื่องจากตัวควบคุมมุมมองหลักไม่เคยหายไป มีวิธีตรวจสอบว่าแผ่นตัวควบคุมมุมมองที่นำเสนอถูกปิดหรือไม่ ฟังก์ชั่นอื่น ๆ ที่ฉันสามารถแทนที่ในตัวควบคุมมุมมองหลักแทนที่จะใช้ผู้รับมอบสิทธิ์บางประเภท ?

1
“ ผู้รับประเภท 'CALayer' สำหรับข้อความอินสแตนซ์คือการประกาศไปข้างหน้า "หมายความว่าอย่างไร
ฉันกำลังย้ายบล็อกโค้ดจากโปรเจ็กต์ iOS4 ไปยัง iOS5 และฉันมีปัญหากับ ARC รหัสสร้าง PDF จากการจับภาพหน้าจอ รหัสการสร้าง PDF UIView *captureView; ... NSMutableData *pdfData = [NSMutableData data]; UIGraphicsBeginPDFContextToData(pdfData, captureView.bounds, nil); UIGraphicsBeginPDFPage(); CGContextRef pdfContext = UIGraphicsGetCurrentContext(); [captureView.layer renderInContext:pdfContext]; UIGraphicsEndPDFContext(); บรรทัด renderInContext [captureView.layer renderInContext:pdfContext]; สร้างข้อผิดพลาดต่อไปนี้ Automatic Reference Counting issue Receiver type 'CALayer' for instance message is a forward declaration มีความคิดอะไรเกิดขึ้นที่นี่?

17
UILabel ไม่ใช่ข้อความที่ย่อขนาดอัตโนมัติให้พอดีกับขนาดฉลาก
ฉันมีปัญหาแปลก ๆ นี้และฉันจัดการกับมันมานานกว่า 8 ชั่วโมงแล้ว .. ขึ้นอยู่กับสถานการณ์ฉันต้องคำนวณUILabelsขนาดแบบไดนามิก เช่นฉันUIViewControllerได้รับเหตุการณ์และฉันเปลี่ยนUILabelsขนาด จากใหญ่ไปเล็ก ขนาดของฉันUILabelเล็กลงและฉันได้ขนาดที่ถูกต้อง แต่ข้อความในของฉันUILabelยังคงเหมือนเดิมขนาดตัวอักษรเดียวกันและอื่น ๆ ฉันต้องการแบบอักษรให้เล็กลงเพื่อให้ข้อความทั้งหมดพอดีกับไฟล์UILabel. คำถามคือจะทำอย่างไรให้ข้อความพอดีกับป้ายของฉันautoshrinkingหรืออะไรทำนองนั้น? ในของฉันxib, UILabels autoshrinkมีการตรวจสอบยังหมายเลขของสายการตั้งค่าเป็น 0 และยังสตริงของฉันมีสัญลักษณ์บรรทัดใหม่ (\ n), และฉันได้เลือกlinebreakmodewordwrapไป อาจมีใครอยู่ในสถานการณ์เดียวกับฉันตอนนี้และช่วยฉันได้ไหม ฉันจะขอบคุณจริงๆ ขอบคุณล่วงหน้า! แก้ไข: UILabelขนาดตัวอักษรขั้นต่ำตั้งไว้ที่ 10

22
การเรียกที่ไม่สมดุลเพื่อเริ่มต้น / สิ้นสุดการเปลี่ยนลักษณะสำหรับ <UITabBarController: 0x197870>
ฉันอ่าน SO เกี่ยวกับผู้ใช้รายอื่นที่พบข้อผิดพลาดที่คล้ายกันแต่ข้อผิดพลาดนี้อยู่คนละกรณี ฉันได้รับข้อความนี้เมื่อฉันเพิ่ม View Controller ในตอนแรก: Unbalanced calls to begin/end appearance transitions for &lt;UITabBarController: 0x197870&gt; โครงสร้างของแอพมีดังนี้: ฉันมี TabBarController 5 แท็บที่เชื่อมโยงกับ 5 View Controllers ในแท็บการแสดงเริ่มต้นฉันเรียก View Controller ใหม่เพื่อวางซ้อนเป็นการแนะนำแอป ฉันใช้รหัสนี้เพื่อเรียกตัวควบคุมมุมมองการแนะนำ: IntroVC *vc = [[IntroVC alloc] init]; [self presentModalViewController:vc animated:YES]; [vc release]; หลังจากIntroVCตัวควบคุมมุมมองนี้ปรากฏขึ้นข้อผิดพลาดข้างต้นจะแสดงขึ้น ps ฉันใช้ xCode 4.2 และ iOS 5.0 SDK กำลังพัฒนาแอป …

1
คำเตือน“ การประกาศฟังก์ชันนี้ไม่ใช่ต้นแบบ” ใน Xcode 9
เมื่อใช้ Xcode 9 This function declaration is not a prototypeมีบางคำเตือนคอมไพเลอร์กล่าวว่า แนะนำให้เพิ่มลงvoidในเนื้อความของวิธีการซึ่งจะแก้ไขได้ ปัญหาที่ฉันพบคือคำเตือนเหล่านั้นจะถูกส่งไปยัง system-API เช่นUIApplicationdelegate-method: - (void)application:(UIApplication *)application handleActionWithIdentifier:(NSString *)identifier forRemoteNotification:(NSDictionary *)userInfo withResponseInfo:(NSDictionary *)responseInfo completionHandler:(void (^)())completionHandler สิ่งนี้สามารถแก้ไขได้ดังต่อไปนี้: - (void)application:(UIApplication *)application handleActionWithIdentifier:(NSString *)identifier forRemoteNotification:(NSDictionary *)userInfo withResponseInfo:(NSDictionary *)responseInfo completionHandler:(void (^)(void))completionHandler ตอนนี้ฉันสงสัยว่าวิธีการมอบสิทธิ์จะยังคงใช้งานได้ในระยะยาวหรือ Apple จะแทรกvoidiOS 11 เวอร์ชันเบต้าในภายหลัง ฉันสงสัยเพราะถ้าฉันรวมvoidเนื้อหา Xcode จะบ่นเกี่ยวกับตัวเลือกวิธีการที่ไม่ตรงกัน (ซึ่งสมเหตุสมผล) มีใครประสบปัญหาเดียวกันหรือไม่

11
การเพิ่มเอฟเฟกต์เบลอพื้นหลังอย่างรวดเร็ว
ฉันกำลังตั้งค่าภาพพื้นหลังเพื่อดูคอนโทรลเลอร์ แต่ฉันต้องการเพิ่มเอฟเฟกต์เบลอให้กับพื้นหลังนี้ด้วย ฉันจะทำเช่นนี้ได้อย่างไร? ฉันกำลังตั้งค่าพื้นหลังด้วยรหัสต่อไปนี้: self.view.backgroundColor = UIColor(patternImage: UIImage(named: "testBg")!) ฉันพบบนอินเทอร์เน็ตเพื่อดูภาพเบลอฉันจะนำสิ่งนี้ไปใช้กับพื้นหลังของฉันได้อย่างไร var darkBlur = UIBlurEffect(style: UIBlurEffectStyle.Dark) // 2 var blurView = UIVisualEffectView(effect: darkBlur) blurView.frame = imageView.bounds // 3 imageView.addSubview(blurView)
119 ios  swift 

11
ลบ 7 วันจากวันที่ปัจจุบัน
ดูเหมือนว่าจะลบ 7 วันจากวันที่ปัจจุบันไม่ได้ นี่คือวิธีที่ฉันทำ: NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]; NSDateComponents *offsetComponents = [[NSDateComponents alloc] init]; [offsetComponents setDay:-7]; NSDate *sevenDaysAgo = [gregorian dateByAddingComponents:offsetComponents toDate:[NSDate date] options:0]; SevenDaysAgo ได้รับค่าเดียวกับวันที่ปัจจุบัน กรุณาช่วย. แก้ไข: ในรหัสของฉันฉันลืมแทนที่ตัวแปรที่รับวันที่ปัจจุบันด้วยวันที่ถูกต้อง ดังนั้นโค้ดด้านบนจึงใช้งานได้
119 objective-c  ios  nsdate 

15
วิธีเปิดแอพเมลจาก Swift
ฉันกำลังทำงานกับแอปพลิเคชันที่รวดเร็วที่ผู้ใช้ป้อนที่อยู่อีเมลและกดปุ่มเพื่อเปิดแอปอีเมลพร้อมที่อยู่ที่ป้อนในแถบที่อยู่ ฉันรู้วิธีทำใน Objective-C แต่ฉันมีปัญหาในการทำให้มันทำงานใน Swift
119 ios  swift 

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