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

7
UILongPressGestureRecognizer จะถูกเรียกสองครั้งเมื่อกดลง
ฉันกำลังตรวจสอบว่าผู้ใช้กดลงไป 2 วินาทีหรือไม่: UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)]; longPress.minimumPressDuration = 2.0; [self addGestureRecognizer:longPress]; [longPress release]; นี่คือวิธีจัดการกดแบบยาว: -(void)handleLongPress:(UILongPressGestureRecognizer*)recognizer{ NSLog(@"double oo"); } ข้อความ "double oo" ถูกพิมพ์สองครั้งเมื่อฉันกดลงนานกว่า 2 วินาที ทำไมนี้ ฉันจะแก้ไขได้อย่างไร

17
วิธีปิดใช้งานท่าทางการปัดย้อนกลับใน UINavigationController บน iOS 7
ใน iOS 7 Apple เพิ่มพฤติกรรมการนำทางเริ่มต้นใหม่ คุณสามารถปัดจากขอบซ้ายของหน้าจอเพื่อย้อนกลับไปที่สแต็กการนำทาง แต่ในแอพของฉันพฤติกรรมนี้ขัดแย้งกับเมนูด้านซ้ายที่กำหนดเองของฉัน ดังนั้นจึงเป็นไปได้ที่จะปิดการใช้งานท่าทางใหม่นี้ใน UINavigationController?

11
คุณสามารถแนบ UIGestureRecognizer กับหลายมุมมองได้หรือไม่?
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapTapTap:)]; [self.view1 addGestureRecognizer:tapGesture]; [self.view2 addGestureRecognizer:tapGesture]; [tapGesture release]; ในรหัสข้างต้นก๊อกเท่านั้นที่view2ได้รับการยอมรับ หากฉันใส่ความคิดเห็นในบรรทัดที่สามview1จะมีการจดจำการแตะ หากฉันพูดถูกและคุณสามารถใช้ตัวจำแนกลายมือเพียงครั้งเดียวฉันไม่แน่ใจว่านี่เป็นข้อบกพร่องหรือไม่ก็ต้องการเอกสารเพิ่มเติมอีก

8
UIGestureRecognizer บน UIImageView
ฉันมีUIImageViewซึ่งฉันต้องการที่จะสามารถปรับขนาดและหมุน ฯลฯ ที่สามารถUIGestureRecognizerถูกเพิ่มไปยังUIImageView? ฉันต้องการเพิ่มตัวจดจำการหมุนและการหยิกUIImageViewที่จะถูกสร้างขึ้นในขณะใช้งานจริง ใครจะเพิ่มตัวจดจำเหล่านี้ได้อย่างไร

23
วิธีการโทรด้วยท่าทางสัมผัสบน UIView โดยทางโปรแกรมด้วยความรวดเร็ว
ฉันมี UIView แล้วและฉันได้เพิ่มการแตะด้วยท่าทาง: let tap = UITapGestureRecognizer(target: self, action: Selector("handleTap:")) tap.delegate = self myView.addGesture(tap) ฉันพยายามเรียกมันโดยทางโปรแกรมใน testfile sendActionForEvent ฉันใช้ฟังก์ชั่นนี้ แต่มันไม่ทำงาน: myView.sendActionForEvent(UIEvents.touchUpDown) มันแสดงให้เห็นตัวเลือกที่ไม่รู้จักส่งไปยังอินสแตนซ์ ฉันจะแก้ปัญหานี้ได้อย่างไร

9
UITapGestureRecognizer - แตะเพียงครั้งเดียวและแตะสองครั้ง
ฉันกำลังพยายามเพิ่ม 2 UITapGestureRecognizersในมุมมองหนึ่งรายการสำหรับการแตะครั้งเดียวและอีกอันสำหรับกิจกรรมการแตะสองครั้ง ตัวจำแนกแท็ปเดียวทำงานตามที่คาดไว้ (ด้วยตัวมันเอง) แต่ดูเหมือนว่าฉันจะไม่สามารถทำให้ตัวจำแนกลายมือ Tap ทำงานได้ ได้พยายามที่จะทดลองกับคุณสมบัติที่ต้องการ: cancelsTouchesInView, delaysTouchesBeganและdelaysTouchesEndedแต่ก็ยังไม่ได้ทำงาน เมื่อฉันแตะสองครั้งตัวจำแนกการแตะเดียวจะเปิดใช้งานเสมอและเหตุการณ์การแตะสองครั้งก็จะถูกส่งไปยังมุมมองระดับสูง แต่ตัวจดจำการแตะสองครั้งที่กำหนดเองดูเหมือนจะไม่ได้รับการแจ้งเตือนเลย เอกสารดูเหมือนจะแนะนำว่า 3 คุณสมบัติที่กล่าวถึงข้างต้นสามารถนำมาใช้เพื่อวัตถุประสงค์ แต่ฉันไม่แน่ใจว่าควรตั้งค่าใดและควรใช้ตัวจำแนกลายมือใด (เดี่ยวสองหรือสอง) หวังว่าคนที่คุ้นเคยกับสิ่งนี้จะช่วยได้ ต่อไปนี้เป็นบล็อกรหัสที่อัพเดทล่าสุด // ****** gesture recognizers ****** - (void)addSingleAndDoubleTapGestureRecognizersToView:(UIView *)view { // single tap UITapGestureRecognizer *singleTapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget: tableViewController action: @selector(handleSingleTapOnView:)]; [singleTapRecognizer setNumberOfTouchesRequired:1]; [view addGestureRecognizer: singleTapRecognizer]; // double tap UITapGestureRecognizer …

22
UIPanGestureRecognizer - เฉพาะแนวตั้งหรือแนวนอน
ฉันมีมุมมองที่UIPanGestureRecognizerต้องลากมุมมองในแนวตั้ง ดังนั้นในการเรียกตัวจำแนกลายมือฉันจึงอัปเดตพิกัด y เพื่อย้ายเท่านั้น ผู้ควบคุมของมุมมองนี้มีส่วนUIPanGestureRecognizerที่จะลากมุมมองในแนวนอนเพียงอัปเดตพิกัด x ปัญหาคือตอนแรกUIPanGestureRecognizerคือการจัดกิจกรรมเพื่อย้ายมุมมองในแนวตั้งดังนั้นฉันจึงไม่สามารถใช้ท่าทางผู้ควบคุม ฉันเหนื่อย - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer: (UIGestureRecognizer *)otherGestureRecognizer; และทั้งสองจะทำงานได้ แต่ฉันไม่ต้องการที่ ฉันต้องการให้ตรวจจับในแนวนอนเฉพาะเมื่อการเคลื่อนไหวเป็นแนวนอนอย่างชัดเจน ดังนั้นมันจะดีถ้าUIPanGestureRecognizerมีคุณสมบัติทิศทาง ฉันจะบรรลุพฤติกรรมนี้ได้อย่างไร ฉันพบว่าเอกสารเกิดความสับสนอย่างมากดังนั้นอาจมีบางคนอธิบายได้ดีกว่าที่นี่

21
ฉันจะปิดใช้งานท่าทางการปัดของ UIPageViewController ได้อย่างไร
ในกรณีหลักของฉันUIViewControllerมีUIPageViewControllerซึ่งประกอบด้วยUINavigationControllerซึ่งประกอบด้วยUIViewController. ฉันต้องการเพิ่มท่าทางการปัดไปยังตัวควบคุมมุมมองสุดท้าย แต่การปัดจะถูกจัดการราวกับว่ามันเป็นของตัวควบคุมการดูหน้า ฉันพยายามทำสิ่งนี้ทั้งโดยทางโปรแกรมและผ่าน xib แต่ไม่มีผลลัพธ์ อย่างที่ฉันเข้าใจฉันไม่สามารถบรรลุเป้าหมายได้จนกว่าจะUIPageViewControllerจัดการกับท่าทางของมัน วิธีแก้ปัญหานี้?

6
เครื่องมือจดจำท่าทางและการทำงานของปุ่ม
ฉันมีลำดับชั้นการดูที่มีลักษณะดังนี้: UIView (A) UIView > UIImageView UIView > UIView (B) UIView > UIView (B) > Rounded Rect Button UIView > UIView (B) > UIImageView UIView > UIView (B) > UILabel ฉันได้แนบเครื่องมือจดจำท่าทางกับ UIView (B) ของฉันแล้ว ปัญหาที่ฉันเผชิญคือฉันไม่ได้รับการดำเนินการใด ๆ สำหรับปุ่ม Rounded Rect ที่อยู่ใน UIView (B) ระบบจดจำท่าทางสัมผัส singleTap จับ / แทนที่เหตุการณ์ Touch Up Inside …

18
ไม่ปัดกลับเมื่อซ่อนแถบนำทางใน UINavigationController
ฉันชอบชุดรูดที่สืบทอดมาจากการฝังมุมมองของคุณในไฟล์UINavigationController. แต่น่าเสียดายที่ฉันไม่สามารถดูเหมือนจะหาทางที่จะซ่อนได้แต่ยังคงมีการติดต่อกลับกระทะรูดNavigationBar gestureฉันสามารถเขียนท่าทางสัมผัสที่กำหนดเองได้ แต่ฉันไม่ต้องการและใช้การUINavigationControllerปัดไปด้านหลังgestureแทน ถ้าฉันยกเลิกการเลือกในกระดานเรื่องราวการปัดไปด้านหลังจะไม่ทำงาน หรือถ้าฉันซ่อนมันโดยทางโปรแกรมสถานการณ์เดียวกัน - (void)viewDidLoad { [super viewDidLoad]; [self.navigationController setNavigationBarHidden:YES animated:NO]; // and animated:YES } ไม่มีวิธีซ่อนด้านบนNavigationBarและยังมีรูด?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.