Skip to main content
0
UX/UI

ออกแบบ UI ให้เหมือนต่อ Lego

ประยุกต์การใช้งาน Sketch Symbols เพื่อเพิ่มความ consistency และ speed ในการออกแบบ

ผมคิดว่าทุกคนที่อ่านบทความนี้คงเคยเห็น Lego มาไม่มากก็น้อย บ้างก็คงเคยเล่นมา ส่วนผมสมัยเด็กก็เล่นของเพื่อนข้างบ้านเอาแทน พอโตขึ้นมาได้มีโอกาสทำงานสาย UI Design ออกแบบไปสักพักหนึ่ง ก็ทำให้ผมนึกถึง Lego ที่ผมเคยเล่นในสมัยเด็ก

องค์ประกอบของหน้าจอ กับชิ้นส่วนของ Lego

เมื่อได้ Wireframe มาแล้ว เราต้องมาลองดูก่อนว่าในแต่ละหน้าจอประกอบไปด้วยองค์ประกอบอะไรบ้าง ในตัวอย่างของบทความนี้ผมจะยกตัวอย่างแอปพลิเคชันที่ไว้ใช้ติดตามสถานะการส่งของจากเลขทะเบียน (คล้าย ๆ กับแอปพลิเคชัน Track & Trace ของไปรษณีย์ไทย)

หน้าจอต้นแบบที่เราได้รับโจทย์มาให้ออกแบบให้สวยงาม

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

แบ่ง UI ออกมาเป็นส่วน ๆ เพื่อดูว่าเราจะต้องสร้างอะไรขึ้นมาบ้าง

หลังจากที่เรามองแบบคร่าว ๆ แล้ว เราจะสามารถแบ่ง UI ออกมาเป็นส่วนต่าง ๆ ในส่วนนี้เราจะเรียกว่า Component ซึ่งจากตัวอย่างเราจะสามารถแบ่งออกมาได้ทั้งหมด 3 Component คือ

  • Navigation Bar
  • Cell Title
  • Cell

นั่นแปลว่าเราต้องออกแบบทั้งหมด 3 Component แล้วเอามาประกอบกันเป็น 1 หน้า ตรงนี้ทุกคนคงจะรู้สึกว่ามันเหมือนกับการเอาตัวต่อ Lego แบบต่าง ๆ มาประกอบกันเพื่อให้ได้รถ Lego หนึ่งคัน แต่ในงานออกแบบมันไม่มีใครสร้างตัวต่อ Lego ขึ้นมาให้เรา ดังนั้นเราจึงต้องสร้างตัวต่อ Lego ขึ้นมาใช้ด้วยตัวของเราเอง

เริ่มสร้าง Component ของตัวเอง

เมื่อเรารู้แล้วว่าหน้าจอของเราประกอบไปด้วย Component อะไรบ้าง เราต้องมาวิเคราะห์กันอีกว่าใน Compomnent นั้น มีรายละเอียดเป็นอย่างไร เรามาเริ่มกันที่ Navigation Bar ก่อนเลยดีกว่า

เมื่อเอา Navigation Bar มาวิเคราะห์ดูก็จะเห็นว่า มันประกอบไปด้วยรายละเอียดต่าง ๆ ดังนี้

  • Page Label (ชื่อของหน้า)
  • Status Bar (แถบสถานะของเครื่อง)
  • Button

รายละเอียดพวกนี้เรียกว่า Element ก็คือย่อยเล็กลงมากจาก Component อีกที จากนั้นก็มาเริ่มสร้าง Component เจ้าตัวนี้กันเลย

ให้เราเปิดโปรแกรม Sketch แล้วสร้างไฟล์ใหม่ขึ้นมา สร้าง Artboard ให้เป็น iPhone ที่มีขนาดหน้าจอ 375 x 667 (สมัยนี้คือ iPhone 8) ก็จะได้แบบรูปด้านล่างนี้

ได้ Artboard ขนาด 375 x 667 มาแล้วววว !!!

จากนั้นสร้างสี่เหลี่ยมที่มีขนาด 375 x 93 เพื่อสร้าง Background ของตัว Navigation Bar และ เปลี่ยนชื่อตัว layer เป็น background ตามภาพล่าง

ได้ Background ของตัว Navigation bar มาแล้ว สีแดงสดใสขนาด 375 x 93

ในส่วนของ Status Bar นั้นค่อนข้างจะยุ่งยากหน่อยให้โหลดเอาไปใช้ได้ก่อนเลยเพื่อความรวดเร็ว จิ้มตรงนี้เลย หล้งจากที่โหลดไปแล้ว ปรับขนาดเหลือ 375 x 20 ก่อน จากนั้นย้ายไปไว้บนสุดของหน้าจอ แล้วปรับให้อยู่ตรงกลาง ก็จะได้แบบด้านล่าง

ได้ Status bar เพิ่มขึ้นมาอย่างคูล ๆ โดยไม่ต้องสร้างเอง

มาต่อกันที่ Page Label โดยเราจะสร้างเป็น Text แบบชิดซ้าย ห่างจากขอบซ้าย และด้านล่างจากตัว background อย่างละ 16px อย่าลืมเปลี่ยนเนื้อหา text เป็น Package ด้วยนะ และเปลี่ยนชื่อ ตัว layer เป็น page-label ตามภาพด้านล่าง

ได้ textlabel แบบชิดซ้ายมาแล้ว ส่วน Textstyle ตามด้านขวามือเลยครับ

ต่อมาก็เหลือปุ่มอีก 2 ปุ่ม คือปุ่ม Setting และปุ่ม Add Item ผมว่าปุ่มที่มีตัวอักษรมันดูธรรมดาไป เลยจะใช้ปุ่มที่เป็นแบบไอคอนแทน ผมจะกำหนดให้ปุ่มมีขนาด 32 x 32px เท่ากัน เริ่มด้วยการสร้างปุ่ม Add item ที่อยู่ริมขวาสุดก่อน (ทำเสร็จปุ่มนึง แล้ว copy ไปทำอีกอันจะง่ายกว่า) ขั้นแรกให้สร้างสี่เหลี่ยมด้านเท่าที่มีขนาด 32px ขึ้นมา เพื่อเป็น background ให้กับปุ่ม วางห่างจากขอบด้านขวา และด้านล่างของ background ตัว navigation bar ด้านละ 16px อย่าลืมเปลี่ยนชื่อ layer เป็น button-bg ตามภาพด้านล่าง

ได้ background ของตัวปุ่มมาแล้ว ขนาด 24px

ต่อมาเราจะใส่ไอคอนให้กับปุ่มกัน โดยรูปภาพก็ จิ้มตรงนี้ ได้เลย กำหนดขนาดให้เป็น 24 x 24px แล้วเอาไปวางตรงกลางของ button-bg ตามภาพด้านล่าง

เท่านี้ก็ได้ปุ่ม Add item แบบคูล ๆ แล้ว

หลังจากได้ปุ่มแล้วเราก็ group ตัว element ของปุ่มเข้าด้วยกัน แล้วตั้งชื่อว่า button

group ตัว element ของปุ่ม เพื่อให้ง่ายต่อการจัดการ

จากนั้นให้เรา copy ตัว button ที่เราเพิ่ง group ไปก่อนหน้า แล้ววางให้ห่างจากปุ่ม add-item ไปทางด้านซ้าย 8px และเปลี่ยนรูปเป็นอีกรูปตามภาพด้านล่าง

แล้วเราก็ได้ปุ่ม setting และปุ่ม add item ทั้งคู่แล้ว

เนื่องจากผมไม่ชอบสี Navigation Bar สีแดงเลย รู้สึกแสบตาแปลก ๆ เลยเปลี่ยนให้เป็นสีขาวแทน จากนั้น group ตัว element ทั้งหมด พร้อมตั้งชื่อว่า navigation-bar เป็นอันเสร็จสิ้น

ผมแอบใส่เส้นด้านล่างเพิ่มเข้ามา เพื่อเน้นให้เห็นว่าเป็น Navigation bar

หลังจากนั้นให้เราคลิกขวาที่ navigation-bar แล้วเลือก create symbol เพียงเท่านี้ เราก็จะได้ตัวต่อ lego ชิ้นแรกของเราแล้ว

หลังจากที่เราสร้าง symbol แล้วตัว sketch จะทำการสร้าง page เพิ่มขึ้นมาชื่อว่า Symbols เอาไว้เก็บ symbol ต่าง ๆ ที่เราสร้างขึ้นมา หน้านี้ก็เปรียบเสมือนถังใส่ Lego ของเรานั่นเอง

ถังใส่ Lego ของผมตอนนี้มีตัวต่อที่ชื่อ navigation-bar แล้วตัวนึง
เมื่อกลับไปที่ Page 1 ก็จะเห็นว่าไอคอนข้างหน้า navigation-bar เปลี่ยนเป็นสัญลักษณ์ Symbol

ชำแหละ Component ออกเป็นเสี่ยง ๆ

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

“ในแต่ละ element ของ component มีการเปลี่ยนแปลงไหม ? ถ้ามีก็ย่อยมันออกไปเป็น symbol ซะ”

เช่น navigation-bar อาจจะมี ปุ่ม ที่แตกต่างกันในแต่ละหน้า หรือบางหน้าก็ไม่มีปุ่มเลยมีแต่ text-label ผมก็จะย่อยปุ่มออกมาเป็น symbol อีกอันนึง

จาก navigation-bar เราจะพบว่า button นั้นมีโอกาสที่จะเปลี่ยนแปลงในแต่ละหน้า เราจึงย่อย button ออกมาเป็น symbol อีกครั้ง และตั้งชื่อเป็น button/add-item และ button/setting จะได้ตามรูปด้านล่าง

หลังจากที่เราสร้าง button symbol แล้ว ให้กลับมายังหน้าที่เราออกแบบไว้ ลองดูที่ overrides ทางด้านขวามือจะเห็นว่ามี dropdown ตรงคำว่า button ให้เลือก เพิ่มเข้ามา

พอย่อยแล้วจะมีตัวเลือกของปุ่มขึ้นมาแสดงทันที

ผลจากการแยกปุ่มออกมาเป็น symbol แบบนี้ จะทำให้เราสามารถเปลี่ยนปุ่ม ลดปุ่มของ navigation-bar ได้ โดยที่ไม่ต้องไปสร้าง navigation-bar ใหม่ให้ยุ่งยาก (ไม่งั้นแอปพลิเคชันมี 3 หน้า ต้องทำ navigation-bar ตั้ง 3 แบบ)

ทั้ง 3 หน้าใช้ navigation-bar อันเดียวกัน แต่ตั้งค่า overrides ต่างกัน

เราจะทำเช่นนี้เหมือนกันกับตัว Cell Title และ Cell แต่ ผมจะไม่บอกวิธีทำแล้วนะ อยากให้ทุกคนลองวิเคราะห์ด้วยตัวเองดู ส่วนของผมทำเสร็จแล้วหน้าตาก็จะออกมาประมาณนี้ เอาไปดูเป็นแบบอย่างได้นะครับ

ด้านขวามือเป็นอันที่ผมออกแบบเสร็จแล้ว ใบ้ให้ว่าตัว Cell นั้นผมใช้ symbol ซ้ำกัน แต่มี overrides ที่แตกต่างกัน

มาสรุปกันอีกครั้งว่าต้องทำอะไรบ้าง

ทำกันมาเยอะละ มาลองทวนกันดูดีกว่าว่าเราต้องทำอะไรบ้างตั้งแต่เริ่ม

  1. เมื่อเราได้ตัว wireframe มาแล้วให้เราลองดูก่อนว่าใน UI ของจอนั้นประกอบไปด้วย component อะไรบ้าง
  2. สร้าง symbol ตาม component ที่เราวิเคราะห์ออกมาได้
  3. วิเคราะห์ดูว่า element ที่อยู่ใน component นั้นมีโอกาสที่จะเปลี่ยนแปลงไหม
  4. ย่อย element ที่มีโอกาสเปลี่ยนแปลงออกมาเป็น symbol อีกที

Symbol นับเป็นความสามารถที่โดดเด่นของโปรแกรม sketch เลย การทำแบบนี้อาจจะกินเวลาในตอนเริ่มแรก แต่ในการออกแบบครั้งต่อไป หรือการแก้ไขงาน จะทำได้อย่างเร็วมาก ๆ และมีความ consistency สูง เพราะในแต่ละหน้าจอใช้ symbol ตัวเดียวกัน ออกแบบหน้าใหม่ก็ใช้ symbol ตัวเดิม จะแก้ไขรายละเอียดของ component ก็แก้ที่ symbol ที่เดียว ไม่ต้องไปนั่งไล่แก้ทีละหน้า ชีวิต designer ก็จะดีไปอีกขั้น 😀


ไฟล์ Sketch ที่ผมทำเสร็จแล้ว จิ้มตรงนี้

สำหรับใครที่ไม่เคยใช้โปรแกรม Sketch สามารถดาวน์โหลดมาทดลองใช้ฟรีได้ 14 วันนะครับ จิ้มตรงนี้

Arnon Chonrawut

Author Arnon Chonrawut

UX/UI Designer @ Billme

More posts by Arnon Chonrawut
Close Menu

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

ตั้งค่าความเป็นส่วนตัว

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
จัดการความเป็นส่วนตัว
  • คุกกี้ที่จำเป็น
    เปิดใช้งานตลอด

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

  • คุกกี้สำหรับการติดตามทางการตลาด

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

บันทึกการตั้งค่า