Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> IOS

จะตรวจจับการกดแบบยาวใน iOS ได้อย่างไร?


ท่าทางสัมผัสแบบกดค้าง (หรือที่เรียกว่าการกดค้างไว้) จะตรวจจับนิ้วอย่างน้อยหนึ่งนิ้วที่สัมผัสหน้าจอเป็นระยะเวลานาน คุณกำหนดค่าระยะเวลาขั้นต่ำที่จำเป็นในการจดจำการกดและจำนวนครั้งที่นิ้วต้องสัมผัสหน้าจอ (ตัวจำแนกท่าทางจะทำงานตามระยะเวลาของการสัมผัสเท่านั้น ไม่ใช่โดยแรงที่เกี่ยวข้อง) คุณอาจใช้ท่าทางสัมผัสแบบกดค้างเพื่อเริ่มการทำงานกับวัตถุที่กำลังกด ตัวอย่างเช่น คุณอาจใช้เพื่อแสดงเมนูตามบริบท

คุณสามารถอ่านเพิ่มเติมเกี่ยวกับเรื่องนี้ได้ https://developer.apple.com/documentation/uikit/touches_presses_and_gestures/handling_uikit_gestures/handling_long-press_gestures

ที่นี่เราจะออกแบบแอปพลิเคชันอย่างง่ายที่เราจะกดปุ่มในช่วงเวลาหนึ่ง (กดแบบยาว) และจะแสดงการแจ้งเตือน

มาเริ่มกันเลย

ขั้นตอนที่ 1 − เปิด Xcode → New Projecr → Single View Application → ตั้งชื่อมันว่า “LongPressGesture”

ขั้นตอนที่ 2 − ใน Main.storyboard ให้เพิ่มปุ่มหนึ่งปุ่มแล้วสร้าง @IBOutlet ของมันแล้วตั้งชื่อว่า “btnLongOutlet”

ขั้นตอนที่ 3 − ตอนนี้เปิด ViewController.swift และสร้างวัตถุของ UIlongPressGestureRecognizer()

var longgesture = UILongPressGestureRecognizer

ขั้นตอนที่ 4 − ใน viewDidLoad() ให้เพิ่มโค้ดต่อไปนี้

longgesture = UILongPressGestureRecognizer(target: self, action: #selector(ViewController.longPress(_:)))
longgesture.minimumPressDuration = 2
btnLongOutlet.addGestureRecognizer(longgesture)

ขั้นตอนที่ 5 − สร้างฟังก์ชัน longPress และเพิ่มโค้ดด้านล่าง

@objc func longPress(_ sender: UILongPressGestureRecognizer) {
   let alertController = UIAlertController(title: "Long Press", message:
      "Long Press Gesture Detected", preferredStyle: .alert)
      alertController.addAction(UIAlertAction(title: "OK", style: .default,handler: nil))
   present(alertController, animated: true, completion: nil)
}

ขั้นตอนที่ 6 − เสร็จแล้ว เรียกใช้แอปพลิเคชัน อย่าลืมแตะปุ่มเป็นเวลา 2 วินาที

จะตรวจจับการกดแบบยาวใน iOS ได้อย่างไร?