การทำ layout - land คืออะไร ?

โจทย์ เป็นอย่างนี้นะครับ เป็นปัญหาเกี่ยวกับการออก แบบ User Interfact เนื่องด้วย อุปกรณ์แอนดรอยด์ สามารถแสดงผลได้ทั้ง

 

  1. แนวตั้ง Portrait ที่เราเห็นกันอยู่
  2. แนวนอน Landscape เวลาที่เราหมุนจอ

ในการออกแบบ User Interface ที่ดี น่าจะออกแบบเพื่อรองรับ Potrait และ Landscape แล้วเราจะทำอย่างไร มาดู Case Study กัน

ผมออกแบบ User Interfact เพื่อรองรับการแสดงผลแบบ Portrait ได้แบบนี้

 

 

ดูดีในตอนเป็น Portait แต่ถ้าผมหนุนจอละ (Ctrl + F11)

 

 

อ้าง ส่วนของด้านล่างหายไปไหนหมด ถูกบังหมด จะดีกว่าไหม ถ้าเราออกแบบ User Interfact ในฝัง Landscape เอาไว้ก่อน เมื่อ มีการหมุนจอ จากการแสดงผลแบบ Portrait ไปเป็น Landscape ไปเป็นแบบนี้ ถ้าจะดี

 

 

 

เปิด Project Android ใหม่ออกมาเลยครับ

ผมสร้าง Project Android ชื่อว่า LearnLayoutLand ให้รันบน android 2.2 ตัว eclipse จะ gen ไฟร์ และ โฟวเดอร์ ต่างๆให้ดังนี้

 

 

ที่ main.xml ที่อยู่ใน โฟวเดอร์ layout เป็นส่วนของการแสดงผล ในส่วนของ Portrait ถ้าเราต้องการออกแบบเฉพาะการแสดงผลในส่วนของ Landscape เราต้องสร้าง โฟวเดอร์ layout-land โดยมีไฟร์ที่ชื่อว่า main.xml ควบคุม

 

สร้างโฟวเดอร์ layout-land

 

 

สร้าง โฟวเดอร์ layout-land ต่อจาก โฟวเดอร์ res นะครับ

 

 

เสร็จแล้วไป copy main.xml จากโฟวเดอร์ layout ไป Paste ก็ได้ครับ

 

 

เราจะได้โครงสร้างของ ไฟร์ และ โฟวเดอร์ แบบนี้

 

 

เอาละครับ ดังนั้นที่ main.xml ที่อยู่ในโฟวเดอร์ layout เราก็ออกแบบให้แสดงผลในส่วน Portrail ตามปกติแบบนี้

 

 

แต่การออกแบบ user interfact ที่ ไฟร์ main.xml ที่โฟวเดอร์ layout-land ต้องออกแบบเป็นแบบนี้นะครับ

 

 

 
ครับทีนี้เวลาโปรแกรมแอนดรอยด์ ทำงาน ถ้าอยู่ใน Mode การแสดงผลแบบ Portrait ต้วแอนดรอยด์จะเลือก main.xml ที่อยุ่ในโฟวเดอร์ layout มาแสดง แต่ถ้าอยู่ใน Mode การแสดงผลแบบ Landscape ตัวแอนดรอยด์ จะเลือกไฟร main.xml ที่อยู่ใน layout-land มาแสดงผลแทนครับ
 

 

 

 

 

 

 

 

 

 

 

 

 

 

คู่มือการอบรมแอนดรอยด์ สำหรับ ผู้เริ่มต้น

Open publication - Free publishing - More android

joomla stats



Powed By EWTC easy4com workshop & training center

53 Bangna-Trad14 Bangna Bangkok 10260

office:02-393-0970 fax:02-399-2542 hotline24/7:081-859-5309