[iOS Dev] Working with UITapGestureRecognizer
โดยปกติแล้วเราจะมีวัตถุ UIButton เพื่อรับ Action จากผู้ใช้ ...
วันนี้เราจะมาลองเล่น UIGestureRecognizer ซึ่งจะเป็นวัตถุที่เอาไว้
รับการกระทำจากนิ้วของ User กับวัตถุที่เป็น View ต่างๆ
ซึ่ง UIGestureRecognizer ก็มีหลายอย่างทั้ง Tap (Touch), Pan (Drag), Pinch (Zoom), Rotation
ใน Blog นี้เราจะพูดถึงแค่ Tap ซึ่งจะใช้วัตถุที่สืบทอดมา นั่นคือ UITapGestureRecognizer
สร้างภาพกันก่อนครับ ~ อ๊ะ ไม่ใช่ ...
สร้าง UIImageView มาตัวนึง ทำการเชื่อมต่อ IBOutlet และ Synthesize ให้เรียบร้อยนะครับ
จากนั้นผมเขียน Function ให้กำหนดค่า ImageView ตัวนี้ด้วยภาพที่ชื่อว่า "Photo.png"
และทำการ Set ให้รับการกระทำต่อวัตถุโดยผู้ใช่้ด้วย
(ปกติค่าจะ Default เป็น NO ครับ สำหรับ UIImageView และ UIView ต่างๆ)
(ปกติค่าจะ Default เป็น NO ครับ สำหรับ UIImageView และ UIView ต่างๆ)
เรื่องตัวแปร isTapped นี่อย่าพึ่งสงสัยครับ ผมประกาศเป็น Instance Variable ไว้ที่ Implementation File
จากนั้นเราจะทำการใส่ Gesture ให้กับ UIImageView ของเรา ซึ่งไม่ได้ยากอะไรนะครับ
แค่ init ด้วย Target (คนที่จะเรียกใช้ Selector ควบคุม ในที่นี้คือ Class นี้ ก็คือ self นั่นเอง)
จากนั้นก็กำหนดว่า Selector ตัวไหน จะเป็นคนควบคุม Gesture ตัวนี้
แล้วก็สั่งให้ ImageView ทำการ AddGestureRecognizer
จากนั้นเราก็จะมาเขียน Selector เพื่อควบคุมการกระทำของ ImageView ตัวนี้ ...
ของผมเนี่ย สั่งไว้ว่า ถ้ากดที่ ImageView ก็ให้เปลี่ยนเป็นอีกรูปหนึ่ง เมื่อกดอีกครั้งก็เปลี่ยนกลับ
Code ที่ได้ก็ประมาณนี้ครับ
จบเท่านี้ล่ะครับ ไม่ยากเลยใช่ไหม ?
ลองเอาไปประยุกต์กันนะครับ Entry เจอกับ UIPanGestureRecognizer
Comments
Post a Comment