วิธีการส่งตัวแปลจาก controller ไป controller ด้วย segue ในภาษา Swift Part:2

Joe Chavintron
odds.team
Published in
2 min readMar 26, 2018

Part ที่ 2 นี้ เป็นการส่งค่าตัวแปล ไปในหลายๆ controller โดยการใช่ identifier ของของ segue แต่ละเส้น เช่น

ผมจะส่งค่าตัวแปล ต่างๆ จาก FirstViewController ไปยัง ViewControllerB และ ViewControllerC จะต้องกำหนด identifier ของเส้นแต่ละเส้นของ segue ตาม “รูป 2.1 การกำหนด identifier ของ segue”

รูป 2.1 การกำหนด identifier ของ segue

จากรูป ผมจะกำหนด identifier ของเส้น FirstViewController กับ ViewControllerB ว่า “gotoViewControllerB” และ identifier ของเส้น FirstViewController กับ ViewControllerC ว่า “gotoViewControllerC” (ต้องไฮไลท์ที่ แท๊บ attributes inspector ตาม “รูป 2.2 attributes inspector”)

รูป 2.2 attributes inspector

หลังจากเรากำหนดค่า identifier ของ เส้น segue แต่ละเส้นแล้ว การที่จะส่ง แต่ละครั้ง ต้องกำหนด if segue.identifier = “(identifier ที่เรากำหนดไว้ข้างต้น)” ใน function prepra ก่อนที่จะส่งตัวแปลแต่ละตัวไปยัง controller ที่กำหนดไว้ข้างต้น ตามตัวอย่าง gist ด้านล่างนี้ “ส่งตัวแปลไปแต่ละ controller ด้วย segue.identifier ที่กำหนดไว้”

ส่งตัวแปลไปแต่ละ controller ด้วย segue.identifier ที่กำหนดไว้

จากตัวอย่าง gist ด้านบน ผมส่ง ค่า imageView.image จาก FirstViewController ไปยัง logoImage ของ ViewControllerB และ ค่า nameLabel.text ไปยัง logoText ของ ViewControllerC (การใช้ segue ไม่สามารถส่งไปยัง outlet ตรงๆได้เนื่องจากมันยังไม่เกิด 555)

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

--

--