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

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

13
การส่งผ่านพารามิเตอร์ไปยัง addTarget: action: forControlEvents
ฉันใช้ addTarget: action: forControlEvents เช่นนี้: [newsButton addTarget:self action:@selector(switchToNewsDetails) forControlEvents:UIControlEventTouchUpInside]; และฉันต้องการส่งผ่านพารามิเตอร์ไปยังตัวเลือก "switchToNewsDetails" ของฉัน สิ่งเดียวที่ฉันทำสำเร็จคือส่ง (id) ผู้ส่งโดยเขียน: action:@selector(switchToNewsDetails:) แต่ฉันกำลังพยายามส่งผ่านตัวแปรเช่นค่าจำนวนเต็ม เขียนด้วยวิธีนี้ไม่ได้ผล: int i = 0; [newsButton addTarget:self action:@selector(switchToNewsDetails:i) forControlEvents:UIControlEventTouchUpInside]; เขียนด้วยวิธีนี้ไม่ได้ผลเช่นกัน: int i = 0; [newsButton addTarget:self action:@selector(switchToNewsDetails:i:) forControlEvents:UIControlEventTouchUpInside]; ความช่วยเหลือใด ๆ จะได้รับการชื่นชม :)

4
ฉันจะเขียน init ที่กำหนดเองสำหรับคลาสย่อย UIView ใน Swift ได้อย่างไร
บอกว่าผมต้องการที่จะsubclass ด้วยและinitUIViewStringInt ฉันจะทำเช่นนี้ในสวิฟท์ถ้าฉันแค่ subclassing UIView? ถ้าฉันแค่สร้างinit()ฟังก์ชันที่กำหนดเองแต่พารามิเตอร์เป็น String และ Int มันจะบอกฉันว่า "super.init () ไม่ได้ถูกเรียกก่อนกลับจาก initializer" และถ้าฉันโทรไปsuper.init()ฉันบอกว่าฉันต้องใช้ตัวเริ่มต้นที่กำหนด ฉันควรใช้อะไรที่นั่น? รุ่นเฟรม? รุ่น coder? ทั้งสอง? ทำไม?

6
คุณสามารถเล่นวิดีโอ HTML5 อัตโนมัติบน iPad ได้หรือไม่?
<video>แท็กautoplay="autoplay"แอตทริบิวต์ทำงานได้ดีใน Safari เมื่อทดสอบบน iPad ต้องเปิดใช้งานวิดีโอด้วยตนเอง ฉันคิดว่ามันเป็นปัญหาในการโหลดดังนั้นฉันจึงทำการตรวจสอบสถานะของสื่อแบบวนซ้ำ: videoPlay: function(){ var me = this; console.log('STATE: ' + $("#periscopevideo").get(0).readyState); if ($("#periscopevideo").get(0).readyState != 4){ setTimeout(function(){me.videoPlay();}, 300); } else { $("#periscopevideo").get(0).play(); } } สถานะยังคงอยู่ที่0บน iPad ซาฟารีสก์ท็อปของฉันมันผ่านไป0, และในที่สุด1 4บน iPad จะเข้าถึงได้ก็ต่อ4เมื่อฉันแตะลูกศร "เล่น" ด้วยตนเอง ยิ่งไปกว่านั้นการโทร$("#periscopevideo").get(0).play()จากการคลิกผ่านonClickก็ใช้งานได้เช่นกัน Apple มีข้อ จำกัด ใด ๆ เกี่ยวกับการเล่นอัตโนมัติหรือไม่? (ฉันกำลังใช้ iOS 5+ อยู่)

12
UITableViewCell ที่มีความสูง UITextView ใน iOS 7?
ฉันจะคำนวณความสูงของ UITableViewCell ด้วย UITextView ใน iOS 7 ได้อย่างไร ฉันพบคำตอบมากมายสำหรับคำถามที่คล้ายกัน แต่sizeWithFont:มีส่วนร่วมในทุกวิธีแก้ปัญหาและวิธีนี้เลิกใช้แล้ว! ฉันรู้ว่าฉันต้องใช้- (CGFloat)tableView:heightForRowAtIndexPath:แต่ฉันจะคำนวณความสูงที่ TextView ของฉันต้องใช้เพื่อแสดงข้อความทั้งหมดได้อย่างไร

7
วิธี จำกัด การจัดลำดับแถว UITableView ใหม่เป็นส่วน
ฉันโดนหัวของฉันเหนือสิ่งนี้และ Google ก็ไม่ได้ทำอะไรเลย ในที่สุดฉันก็ทำมันออกมาและคิดว่าฉันจะเขียนมันไว้ที่นี่เพื่อประโยชน์ของคนต่อไป คุณมีUITableViewหลายส่วน แต่ละส่วนเป็นเนื้อเดียวกัน แต่ตารางโดยรวมมีความแตกต่างกัน ดังนั้นคุณอาจต้องการอนุญาตให้จัดลำดับแถวใหม่ภายในส่วน แต่ไม่สามารถเรียงลำดับข้ามส่วนได้ บางทีคุณแค่ต้องการให้ส่วนหนึ่งสามารถจัดเรียงใหม่ได้เลย (นั่นคือกรณีของฉัน) หากคุณกำลังมองหาเหมือนที่ฉันเป็นUITableViewDataSourceDelegateคุณจะไม่พบการแจ้งเตือนเมื่อกำลังจะให้คุณย้ายแถวระหว่างส่วนต่างๆ คุณจะได้รับหนึ่งเมื่อมันเริ่มย้ายแถว (ซึ่งก็ใช้ได้) และเมื่อมันย้ายไปแล้วและคุณจะมีโอกาสซิงค์กับสิ่งของภายในของคุณ ไม่เป็นประโยชน์ แล้วคุณจะป้องกันการสั่งซื้อซ้ำระหว่างส่วนต่างๆได้อย่างไร? ฉันจะโพสต์สิ่งที่ฉันทำเป็นคำตอบแยกต่างหากปล่อยให้คนอื่นโพสต์คำตอบที่ดีกว่านี้!

18
ฉันจะสร้าง UILabel ด้วยข้อความขีดทับได้อย่างไร
ฉันต้องการสร้างUILabelข้อความที่เป็นแบบนี้ ฉันจะทำเช่นนี้ได้อย่างไร? เมื่อข้อความมีขนาดเล็กบรรทัดควรมีขนาดเล็กด้วย

8
วิธีแสดงตัวบ่งชี้การโหลดในแถบสถานะด้านบน
ฉันสังเกตเห็นว่าแอพบางตัวเช่น Safari และ Mail แสดงตัวบ่งชี้การโหลดในแถบสถานะ (แถบที่ด้านบนสุดของโทรศัพท์) เมื่อพวกเขากำลังเข้าถึงเครือข่าย มีวิธีทำสิ่งเดียวกันในแอพ SDK หรือนี่เป็นเพียงสิ่งเดียวของ Apple?
120 ios  cocoa-touch 

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

6
การคัดลอก NSArray อย่างละเอียด
มีฟังก์ชั่นในตัวที่ช่วยให้ฉันคัดลอกแบบลึกได้NSMutableArrayหรือไม่? ฉันมองไปรอบ ๆ บางคนบอกว่า[aMutableArray copyWithZone:nil]งานเป็นสำเนาลึก แต่ฉันลองแล้วดูเหมือนว่าจะเป็นการลอกแบบตื้น ๆ ตอนนี้ฉันกำลังทำสำเนาด้วยตัวเองด้วยการforวนซ้ำ: //deep copy a 9*9 mutable array to a passed-in reference array -deepMuCopy : (NSMutableArray*) array toNewArray : (NSMutableArray*) arrayNew { [arrayNew removeAllObjects];//ensure it's clean for (int y = 0; y<9; y++) { [arrayNew addObject:[NSMutableArray new]]; for (int x = 0; x<9; x++) …

9
มีวิธีระงับคำเตือนใน Xcode หรือไม่?
มีวิธีระงับคำเตือนใน Xcode หรือไม่? ตัวอย่างเช่นฉันกำลังเรียกใช้เมธอดที่ไม่มีเอกสารและเนื่องจากเมธอดไม่อยู่ในส่วนหัวฉันจึงได้รับคำเตือนเกี่ยวกับการคอมไพล์ ฉันรู้ว่าฉันสามารถเพิ่มลงในส่วนหัวเพื่อหยุดการเตือนได้ แต่ฉันสงสัยว่ามีวิธีอื่นนอกเหนือจากการเพิ่มลงในส่วนหัว (เพื่อให้ส่วนหัวสะอาดและเป็นมาตรฐาน) เพื่อระงับการเตือนหรือไม่ pragma หรืออะไร?

14
วิธีใช้ uiviewcontroller สตอรี่บอร์ดเดียวสำหรับคลาสย่อยหลาย ๆ
สมมติว่าฉันมีสตอรีบอร์ดที่มีUINavigationControllerเป็นตัวควบคุมมุมมองเริ่มต้น ควบคุมดูรากของมันคือ subclass ของซึ่งเป็นUITableViewController BasicViewControllerมีIBActionซึ่งเชื่อมต่อกับปุ่มนำทางด้านขวาของแถบนำทาง จากนั้นฉันต้องการใช้สตอรีบอร์ดเป็นเทมเพลตสำหรับมุมมองอื่น ๆ โดยไม่ต้องสร้างสตอรีบอร์ดเพิ่มเติม บอกว่ามุมมองเหล่านี้จะมีว่าอินเตอร์เฟซเดียวกัน แต่มีการควบคุมดูรากของการเรียนSpecificViewController1และซึ่งเป็นคลาสย่อยSpecificViewController2 ตัวควบคุมมุมมอง 2 ตัวนั้นจะมีฟังก์ชันและอินเทอร์เฟซเหมือนกันยกเว้นวิธี มันจะเป็นดังต่อไปนี้:BasicViewControllerIBAction @interface BasicViewController : UITableViewController @interface SpecificViewController1 : BasicViewController @interface SpecificViewController2 : BasicViewController ฉันจะทำอะไรแบบนั้นได้ไหม? ฉันสามารถเพียงอินสแตนซ์สตอรี่บอร์ดของBasicViewControllerแต่ต้องควบคุมดูราก subclass SpecificViewController1และSpecificViewController2? ขอบคุณ

8
วิธีสร้าง UIWebView แบบโปร่งใส
ฉันมีแอปที่มีUITableViewมุมมองรายละเอียดที่เกี่ยวข้องสำหรับแต่ละแถว ในมุมมองรายละเอียดฉันต้องแสดงข้อความและภาพพื้นหลัง (ข้อความแตกต่างกันในแต่ละแถว แต่ภาพยังคงเหมือนเดิม) วิธีที่ง่ายที่สุดในความคิดของฉันคือการใส่ข้อความในไฟล์ .rtf UIWebViewและแสดงไว้ใน จากนั้นใส่UIImageViewด้านหลังไฟล์UIWebView. ฉันได้พยายามตั้งค่าUIWebViewความทึบของ IB เป็นศูนย์ แต่ก็ไม่ได้ผล คุณสามารถช่วยฉันได้ไหม?

5
วิธีใดที่มีประสิทธิภาพที่สุดในการบังคับให้ UIView วาดใหม่
ฉันมี UITableView พร้อมรายการ การเลือกรายการจะผลัก viewController จากนั้นดำเนินการต่อไปนี้ จากเมธอด viewDidLoad ฉันปิดการร้องขอ URLRequest สำหรับข้อมูลที่ต้องการโดยในมุมมองย่อยของฉัน - คลาสย่อย UIView ที่มีการแทนที่ drawRect เมื่อข้อมูลมาจากคลาวด์ฉันจะเริ่มสร้างลำดับชั้นมุมมองของฉัน คลาสย่อยที่เป็นปัญหาจะถูกส่งผ่านข้อมูลและตอนนี้เมธอด drawRect มีทุกสิ่งที่จำเป็นในการแสดงผล แต่. เพราะฉันไม่เรียก drawRect อย่างชัดเจน - Cocoa-Touch จัดการอย่างนั้น - ฉันไม่มีทางแจ้ง Cocoa-Touch ว่าฉันต้องการให้คลาสย่อย UIView นี้แสดงผลจริงๆ เมื่อไหร่? ตอนนี้จะดี! ฉันได้ลอง [myView setNeedsDisplay] แล้ว แบบนี้ใช้งานได้บางครั้ง ขาด ๆ หาย ๆ มาก ฉันต่อสู้กับสิ่งนี้มาหลายชั่วโมงแล้ว ขอใครสักคนที่กรุณาให้แนวทางที่มั่นคงและรับประกันว่าจะบังคับให้ UIView re-render นี่คือตัวอย่างโค้ดที่ดึงข้อมูลไปยังข้อมูลพร็อพเพอร์ตี้: …

13
การปิดตัวควบคุมมุมมองที่นำเสนอ
ฉันมีคำถามตามทฤษฎี ตอนนี้ฉันกำลังอ่านคู่มือViewControllerของ Apple พวกเขาเขียน: เมื่อถึงเวลาที่ต้องปิดตัวควบคุมมุมมองที่นำเสนอแนวทางที่ต้องการคือให้ตัวควบคุมมุมมองที่นำเสนอปิดมัน กล่าวอีกนัยหนึ่งเมื่อใดก็ตามที่เป็นไปได้ตัวควบคุมมุมมองเดียวกับที่นำเสนอตัวควบคุมมุมมองควรรับผิดชอบในการปิดมันด้วย แม้ว่าจะมีเทคนิคหลายประการในการแจ้งตัวควบคุมมุมมองการนำเสนอว่าควรปิดตัวควบคุมมุมมองที่นำเสนอ แต่เทคนิคที่ต้องการคือการมอบหมาย แต่ฉันไม่สามารถอธิบายได้ว่าทำไมฉันต้องสร้างโปรโตคอลใน VC ที่นำเสนอและเพิ่มตัวแทนที่เปลี่ยนแปลงได้สร้างวิธีการมอบสิทธิ์ในการนำเสนอ VC เพื่อปิด VC ที่นำเสนอแทนที่จะเรียกแบบธรรมดาในวิธีการควบคุมมุมมองที่นำเสนอ [self dismissViewControllerAnimated:NO completion:nil]เหรอ? ทำไมตัวเลือกแรกจึงดีกว่า? ทำไม Apple ถึงแนะนำ

15
จะกำหนดขนาดเนื้อหาของ UIWebView ได้อย่างไร?
ฉันมีเนื้อหาที่UIWebViewแตกต่างกัน (หน้าเดียว) ฉันต้องการค้นหาCGSizeเนื้อหาเพื่อปรับขนาดมุมมองของผู้ปกครองให้เหมาะสม สิ่งที่เห็นได้ชัดคือ-sizeThatFits:เพียงแค่ส่งคืนขนาดเฟรมปัจจุบันของ webView

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