Posts

Showing posts with the label action

Custom UIActivity for UIActivityViewController

Image
UIActivityViewController เป็น View Controller สำหรับทำ action หรือ share สำหรับ Content ที่เราส่งไป เช่น Tweet, Post to Facebook, Copy to Clipboard และอื่นๆ ซึ่งวิธีการใช้งานก็ง่ายมากเลย เท่านี้เอง โดย View Controller ก็จะมี action ที่จะขึ้นมาเป็น default ซึ่งจะแสดงทั้งหมด ซึ่งเราสามารถนำอันที่เราไม่ต้องการออกได้โดยการทำแบบนี้ โดยใน iOS 7 นั้น เราจะเห็นว่ามันแบ่งออกเป็น 2 แบบนั่นคือ Action Type (ด้านล่าง) และ Share Type (ด้านบน) ซึ่งที่ Blog วันนี้ เราจะมา Custom UIActivity ในส่วนของ Action Type กันนะ (จริงๆ แล้วก็ไม่ต่างกัน สำหรับทั้ง 2 Type เพียงแต่ผมยังหาวิธีทำ Icon ในส่วนของ Share Type ไม่ได้ - -' แล้วก็ไม่เจอใครทำได้ด้วยนะ) สิ่งที่เราจะมาทำคือ "Open in Safari" ซึ่งเป็น Action ง่ายๆ ที่ผมก็สงสัยว่า ทำไมมันถึงไม่มีมาให้เลยนะ (ที่ผมเขียนคือ จะเป็นการเปิด URL แรกที่เจอใน UIActivityItems นะ) ขั้นแรกก็สร้าง Class เป็น UIActivity Subclass   แล้วประกาศ Property สำหรับรูปภาพที่จะแสดงบน UIActivityViewController และตัวแปรที่จะเก็บ URL...

[iOS Dev] Working with UITapGestureRecognizer

Image
โดยปกติแล้วเราจะมีวัตถุ 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 ต่างๆ) เรื่องตัวแปร isTapped นี่อย่าพึ่งสงสัยครับ ผมประกาศเป็น Instance Variable ไว้ที่ Implementation File  จากนั้นเราจะทำการใส่ Gesture ให้กับ UIImageView ของเรา ซึ่งไม่ได้ยากอะไรนะครับ  แค่ init ด้วย Target (คนที่จะเรียกใช้ Selector ควบคุม ในที่นี้คือ ...