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

อย่าใช้แท็กนี้จนกว่าคุณจะระบุที่อยู่ iPhone ของ Apple และ / หรือ iPod touch โดยเฉพาะ สำหรับคำถามที่ไม่ได้ขึ้นอยู่กับฮาร์ดแวร์ให้ใช้แท็ก [iOS] แท็กที่ต้องพิจารณาเพิ่มเติมคือ [xcode] (แต่หากคำถามเกี่ยวกับ IDE เอง), [swift], [purpose-c] หรือ [cocoa-touch] (แต่ไม่ใช่ [cocoa]) โปรดงดเว้นคำถามเกี่ยวกับ iTunes App Store หรือเกี่ยวกับ iTunes Connect หากใช้ C # ให้แท็กด้วย [mono]

7
วิธีรับชื่อหน้า HTML ที่แสดงใน UIWebView
ฉันต้องการแยกเนื้อหาของแท็กชื่อจากหน้า HTML ที่แสดงใน UIWebView วิธีที่แข็งแกร่งที่สุดในการทำเช่นนั้นคืออะไร? ฉันรู้ว่าฉันสามารถทำได้: - (void)webViewDidFinishLoad:(UIWebView *)webView{ NSString *theTitle=[webView stringByEvaluatingJavaScriptFromString:@"document.title"]; } อย่างไรก็ตามจะใช้งานได้เฉพาะเมื่อเปิดใช้งานจาวาสคริปต์ อีกทางหนึ่งฉันสามารถสแกนข้อความของโค้ด HTML เพื่อดูชื่อ แต่รู้สึกยุ่งยากเล็กน้อยและอาจพิสูจน์ได้ว่าผู้เขียนหน้าเว็บสับสนกับรหัสของพวกเขา หากเป็นเช่นนั้นวิธีที่ดีที่สุดในการประมวลผลข้อความ html ภายใน iPhone API คืออะไร ฉันรู้สึกว่าฉันลืมสิ่งที่ชัดเจน มีวิธีที่ดีกว่าสองตัวเลือกเหล่านี้หรือไม่? ปรับปรุง: ทำตามคำตอบของคำถามนี้: UIWebView: คุณสามารถปิดการใช้งาน Javascript ได้หรือไม่? ดูเหมือนจะไม่มีวิธีปิด Javascript ใน UIWebView ดังนั้นวิธีการ Javascript ข้างต้นจะทำงานได้เสมอ

14
UILabel - ป้ายกำกับขนาดอัตโนมัติเพื่อให้พอดีกับข้อความหรือไม่
เป็นไปได้หรือไม่ที่จะปรับขนาดกล่อง / ขอบเขตของ UILabel โดยอัตโนมัติเพื่อให้พอดีกับข้อความที่มีอยู่? (ฉันไม่สนใจว่ามันจะใหญ่กว่าจอแสดงผลหรือไม่) ดังนั้นหากผู้ใช้ป้อน "hello" หรือ "ชื่อของฉันยาวจริง ๆ ฉันต้องการให้พอดีกับกล่องนี้" จะไม่ถูกตัดทอนและฉลากจะ 'กว้าง' ตามนั้นหรือไม่




8
Xcode / Simulator: วิธีรันเวอร์ชั่น iOS ที่เก่ากว่า?
ฉันกำลังคิดจะอัปเกรดเป็น iOS SDK 4.2 แต่สิ่งที่ฉันสงสัยคือถ้าฉันยังสามารถเรียกใช้ตัวจำลองเป็น iOS 3.2 ได้ นี่เป็นเพราะฉันสร้าง iAds สำหรับ iPad แต่ฉันยังต้องการตรวจสอบว่าโปรแกรมของฉันจะทำงานด้วย iOS 3.2 หรือไม่ หมายเหตุ: ฉันเคยเห็นโพสต์ที่คล้ายกันนี้ในอดีต แต่พวกเขาไม่ได้มีประโยชน์ในการให้ขั้นตอนที่แน่นอนในการทำสิ่งนี้
143 ios  objective-c  iphone  xcode  ipad 

13
ฉันสามารถเปลี่ยนคุณสมบัติตัวคูณสำหรับ NSLayoutConstraint ได้หรือไม่
ฉันสร้างมุมมองสองมุมมองในหนึ่งมุมมองจากนั้นเพิ่มข้อ จำกัด ระหว่างมุมมอง: _indicatorConstrainWidth = [NSLayoutConstraint constraintWithItem:self.view1 attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.view2 attribute:NSLayoutAttributeWidth multiplier:1.0f constant:0.0f]; [_indicatorConstrainWidth setPriority:UILayoutPriorityDefaultLow]; _indicatorConstrainHeight = [NSLayoutConstraint constraintWithItem:self.view1 attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:self.view2 attribute:NSLayoutAttributeHeight multiplier:1.0f constant:0.0f]; [_indicatorConstrainHeight setPriority:UILayoutPriorityDefaultLow]; [self addConstraint:_indicatorConstrainWidth]; [self addConstraint:_indicatorConstrainHeight]; ตอนนี้ฉันต้องการเปลี่ยนคุณสมบัติตัวคูณด้วยภาพเคลื่อนไหว แต่ฉันไม่สามารถหาวิธีเปลี่ยนคุณสมบัติตัวคูณได้ (ฉันพบ _coefficient ในคุณสมบัติส่วนตัวในไฟล์ส่วนหัว NSLayoutConstraint.h แต่เป็นไฟล์ส่วนตัว) ฉันจะเปลี่ยนคุณสมบัติตัวคูณได้อย่างไร วิธีแก้ปัญหาของฉันคือการลบข้อ จำกัด multiplerเก่าและเพิ่มใหม่มีมูลค่าแตกต่างกันสำหรับ

15
CABasicAnimation รีเซ็ตเป็นค่าเริ่มต้นหลังจากที่การเคลื่อนไหวเสร็จสมบูรณ์
ฉันหมุน CALayer และพยายามหยุดที่ตำแหน่งสุดท้ายหลังจากที่ภาพเคลื่อนไหวเสร็จสมบูรณ์ แต่หลังจากที่ภาพเคลื่อนไหวเสร็จสมบูรณ์มันจะรีเซ็ตเป็นตำแหน่งเริ่มต้น (เอกสาร xcode กล่าวอย่างชัดเจนว่าแอนิเมชันจะไม่อัปเดตมูลค่าของทรัพย์สิน) ข้อเสนอแนะใด ๆ วิธีการบรรลุสิ่งนี้

8
วิธีปฏิบัติที่ดีที่สุดสำหรับ iPhone UIView Animation
อะไรคือวิธีปฏิบัติที่ดีที่สุดในการสร้างภาพเคลื่อนไหวการเปลี่ยนมุมมองบน iPhone ตัวอย่างเช่นViewTransitionsโครงการตัวอย่างจาก apple ใช้รหัสเช่น: CATransition *applicationLoadViewIn = [CATransition animation]; [applicationLoadViewIn setDuration:1]; [applicationLoadViewIn setType:kCATransitionReveal]; [applicationLoadViewIn setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn]]; [[myview layer] addAnimation:applicationLoadViewIn forKey:kCATransitionReveal]; แต่ยังมีตัวอย่างโค้ดที่ลอยอยู่รอบ ๆ ตาข่ายซึ่งมีลักษณะดังนี้: [UIView beginAnimations:nil context:nil]; [UIView setAnimationDuration:0.75]; [UIView setAnimationDelegate:self]; [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:myview cache:YES]; [myview removeFromSuperview]; [UIView commitAnimations]; แนวทางที่ดีที่สุดคืออะไร หากคุณสามารถให้ข้อมูลโค้ดได้เช่นกัน หมายเหตุ:ฉันไม่สามารถรับวิธีที่สองเพื่อทำงานอย่างถูกต้อง

6
การเปลี่ยนแปลงภาพเคลื่อนไหวของตัวควบคุมมุมมองโดยไม่ต้องใช้ตัวควบคุมทิศทางกองซ้อนตัวควบคุมย่อยหรือตัวควบคุม modal?
NavigationControllers มีกอง ViewController ในการจัดการและการเปลี่ยนภาพเคลื่อนไหว จำกัด การเพิ่มตัวควบคุมมุมมองเป็นมุมมองย่อยไปยังตัวควบคุมมุมมองที่มีอยู่ต้องผ่านเหตุการณ์ไปยังตัวควบคุมมุมมองย่อยซึ่งเป็นความเจ็บปวดในการจัดการเต็มไปด้วยความรำคาญเล็กน้อยและโดยทั่วไปรู้สึกเหมือนแฮ็คที่ไม่ดีเมื่อใช้งาน ทำสิ่งนี้) การนำเสนอตัวควบคุมมุมมอง modal อีกครั้งวางตัวควบคุมมุมมองด้านบนของอีกและในขณะที่มันไม่มีปัญหาผ่านเหตุการณ์ที่อธิบายไว้ข้างต้นมันไม่ 'สลับ' ตัวควบคุมมุมมองจริง ๆ มันซ้อนกัน สตอรีบอร์ดนั้น จำกัด อยู่ที่ iOS 5 และเกือบจะสมบูรณ์แบบ แต่ไม่สามารถใช้ได้ในทุกโครงการ ใครบางคนสามารถนำเสนอตัวอย่างรหัส SOLID ในวิธีการเปลี่ยนมุมมองตัวควบคุมโดยไม่มีข้อ จำกัด ข้างต้นและช่วยให้การเปลี่ยนภาพเคลื่อนไหวระหว่างพวกเขา? ตัวอย่างปิด แต่ไม่มีภาพเคลื่อนไหว: วิธีการใช้ตัวควบคุมมุมมองกำหนดเอง iOS หลายตัวโดยไม่มีตัวควบคุมการนำทาง แก้ไข: การใช้ Nav Controller นั้นใช้ได้ แต่ต้องมีรูปแบบการเปลี่ยนภาพเคลื่อนไหว (ไม่ใช่แค่เอฟเฟ็กต์ภาพนิ่ง) ตัวควบคุมมุมมองที่แสดงจะต้องถูกเปลี่ยนอย่างสมบูรณ์ (ไม่ซ้อนกัน) ถ้าตัวควบคุมมุมมองที่สองต้องเอาตัวควบคุมมุมมองอื่นออกจากสแต็กแสดงว่าตัวควบคุมนั้นดูไม่เพียงพอ แก้ไข 2: iOS 4 ควรเป็นระบบปฏิบัติการพื้นฐานสำหรับคำถามนี้ฉันควรชี้แจงว่าเมื่อกล่าวถึงกระดานเรื่องราว (ด้านบน)

4
เพื่อ drawRect หรือไม่เพื่อ drawRect (เมื่อหนึ่งควรใช้ drawRect / Core Graphics vs subviews / images และทำไม?)
เพื่อชี้แจงจุดประสงค์ของคำถามนี้: ฉันรู้วิธีสร้างมุมมองที่ซับซ้อนทั้งในมุมมองย่อยและการใช้ drawRect ฉันพยายามเข้าใจอย่างถ่องแท้ว่าเหตุใดจึงต้องใช้อย่างใดอย่างหนึ่ง ฉันเข้าใจเช่นกันว่ามันไม่สมเหตุสมผลที่จะปรับให้เหมาะสมล่วงหน้าและทำบางสิ่งที่ยากกว่าก่อนที่จะทำการทำโปรไฟล์ พิจารณาว่าฉันพอใจกับทั้งสองวิธีและตอนนี้ต้องการความเข้าใจที่ลึกซึ้งยิ่งขึ้น ความสับสนมากมายของฉันมาจากการเรียนรู้วิธีทำให้ประสิทธิภาพการเลื่อนดูตารางอย่างราบรื่นและรวดเร็ว แน่นอนแหล่งที่มาดั้งเดิมของวิธีนี้มาจากผู้เขียนที่อยู่เบื้องหลังตัวสั่นด้วยความตื่นเต้นสำหรับ iPhone (tweetie เดิม) โดยพื้นฐานแล้วจะบอกว่าเพื่อให้การเลื่อนตารางเนยเป็นไปอย่างราบรื่นความลับคือไม่ต้องใช้การดูย่อย แต่แทนที่จะวาดทั้งหมดใน uiview ที่กำหนดเอง โดยพื้นฐานแล้วดูเหมือนว่าการใช้การดูย่อยจำนวนมากจะทำให้การเรนเดอร์ช้าลงเพราะพวกเขามีค่าใช้จ่ายจำนวนมาก เพื่อความเป็นธรรมนี้ถูกเขียนขึ้นเมื่อ 3GS เป็นแบรนด์ที่ค่อนข้างใหม่ spankin และ iDevices ได้รับเร็วขึ้นมากตั้งแต่นั้นมา ยังคงใช้วิธีนี้เป็นประจำ แนะนำในinterwebsและที่อื่น ๆ สำหรับตารางที่มีประสิทธิภาพสูง ในความเป็นจริงมันเป็นวิธีการที่แนะนำไว้ในตารางที่แอปเปิ้ลโค้ดตัวอย่างได้รับการแนะนำในวิดีโอ WWDC หลายคน ( ถอนเงินปฏิบัติสำหรับ iOS นักพัฒนา ) และ iOS หลายโปรแกรมหนังสือ มีเครื่องมือที่ดูยอดเยี่ยมในการออกแบบกราฟิกและสร้างรหัส Core Graphics สำหรับพวกเขา ดังนั้นในตอนแรกฉันจึงเชื่อว่า "มีเหตุผลที่ทำให้ Core Graphics มีอยู่มันเร็วมาก" แต่ทันทีที่ฉันคิดว่าฉันได้รับแนวคิด "โปรดปรานกราฟิกหลักเมื่อเป็นไปได้" ฉันเริ่มเห็นว่า …

7
การเปรียบเทียบ JSON Parser สำหรับ Objective-C (JSON Framework, YAJL, TouchJSON ฯลฯ )
เท่าที่ผมรู้ว่ามีสาม JSON Parsers สำหรับวัตถุประสงค์ C, JSON กรอบ , YAJLและสัมผัส JSON จากนั้นทั้งสามคนจะมีลักษณะของตนเอง ตัวอย่างเช่น: YAJL สามารถใช้เป็นตัวแยกวิเคราะห์สไตล์ SAX JSON Framework มีประวัติค่อนข้างยาวและใช้กันอย่างแพร่หลาย แตะ JSON แยกวิเคราะห์ NSData แทน NSString นอกจากนี้เท่าที่ฉันทดสอบผลลัพธ์ของการเปรียบเทียบประสิทธิภาพมีดังนี้: [รวดเร็ว] YAJL> กรอบ JSON> แตะ JSON [ช้า] หากคุณรู้จักข้อดีและข้อเสียของตัวแยกวิเคราะห์ JSON เหล่านี้คุณบอกฉันได้ไหม สุดท้ายถ้าคุณรู้จัก JSON Parser คนอื่น ๆ โปรดบอกฉัน
142 iphone  objective-c  json 

11
ความยาวสูงสุดของข้อความแจ้งเตือนผลักดันคืออะไร?
ความยาวสูงสุดของข้อความแจ้งเตือนของการแจ้งเตือนแบบพุชของ iOS คืออะไร เอกสารระบุว่าน้ำหนักบรรทุกการแจ้งเตือนจะต้องมีการภายใต้ 256 ไบต์รวมแต่แน่นอนต้องมีขีด จำกัด ของตัวละครที่เฉพาะเจาะจงสำหรับข้อความแจ้งเตือน

30
โปรไฟล์สิทธิที่ระบุ ... (0xE8008016) ข้อผิดพลาด iOS 4.2
ฉันได้รับข้อผิดพลาด 'หวั่น' The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile. (0xE8008016).เมื่อพยายามปรับใช้แอปแรกของฉันไปยังอุปกรณ์ที่ไม่ต้องเจลเบรคใน iOS 4.2.6 (Verizon) สิ่งคือฉันไม่ได้มีEntitlements fileในโครงการของฉันเพราะฉันไม่ได้กระจายเลยเพียงวางไว้ในอุปกรณ์เดียว ฉันได้ผ่านห่วงและห่วงทั้งหมดที่แอปเปิ้ลทำให้คุณผ่าน (ใบรับรองอุปกรณ์การจัดเตรียม) ลงไปที่จดหมายและฉันไม่สามารถเข้าใจได้ว่าเกิดอะไรขึ้น ใครช่วยได้โปรดช่วยฉันแก้ปัญหานี้ด้วย?

10
วิธีตรวจสอบว่ามีการติดตั้งแอพจากหน้าเว็บบน iPhone หรือไม่?
ฉันต้องการสร้างเว็บเพจหน้าเว็บที่จะเปลี่ยนเส้นทาง iPhone ไปที่ร้านค้าแอปหาก iPhone ไม่มีแอปพลิเคชันติดตั้ง แต่ถ้า iPhone มีแอปติดตั้งอยู่ฉันต้องการให้เปิดแอปพลิเคชัน ฉันได้ติดตั้ง url ที่กำหนดเองแล้วในแอปพลิเคชั่น iPhone ดังนั้นฉันจึงมี URL สำหรับแอปพลิเคชันที่มีลักษณะดังนี้: myapp:// และหาก URL นี้ไม่ถูกต้องฉันต้องการให้หน้าเปลี่ยนเส้นทางไปที่ร้านค้าแอป เป็นไปได้ทั้งหมดหรือไม่ หากฉันไม่ได้ติดตั้งแอปพลิเคชันบนโทรศัพท์และเขียน myapp: // url ใน Safari สิ่งที่ฉันได้รับคือข้อความแสดงข้อผิดพลาด แม้ว่าจะมีแฮ็กที่น่าเกลียดกับจาวาสคริปต์ที่ฉันอยากจะรู้จริงๆ?

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