2 Standard Layout in Android

ถ้าใน iOS Dev เราจะสามารถจัดวาง Widget ของเราได้อย่างอิสระ ไม่มี Layout แบบใดตายตัว
ถ้าใน Blackberry Dev เราจะสามารถวาง Widget ได้เป็นลักษณะของ Row และควบคุมพื้นที่ภายใน Row ด้วย HorizontalManager

แต่ใน Android เราจะต้องเลือกการทำงานของเรา ว่าจะเลือกแบบไหน... ในการทำงาน
ซึ่ง Layout มีมากมายหลายประเภท
ในหน้า Graphical Layout ของ main.xml เลื่อนลงมาข้างล่าง แล้วเลือกดูมีเยอะแยะเลย...

สำหรับการเริ่มต้นที่ควรรู้ไว้ น่าจะมี 3 อันนะ ^^

1. Linear Layout


เป็น Layout พื้นฐานที่จะมีมาให้ตั้งแต่ตอนสร้าง Project ใหม่เลย...
การจัดวาง Widget ของ Layout ชนิดนี้จะเป็น ลำดับขั้นลงมา ดังในรูป


ซึ่ง Layout ชนิดนี้ เราสามารถที่ลาก Widget ใส่ได้อย่างอิสระ... ในแนวตั้ง...
แต่ Layout ชนิดนี้... เมือ่เราลาก Widget ลงมาใน View แล้ว ใน main.xml มันจะ
Generate XML Code มาให้เราโดยอัตโนมัติ เหลือเพียงแต่เพิ่มฟังก์ชั่นต่าง ๆ ให้กับ Widget เท่านั้น

2. Relative Layout


ต่อไปเป็น Relative Layout ซึ่งเป็น Layout แบบไม่อิสระในการลาก Widget เข้ามา
การใช้ Layout ชนิดนี้ คือให้เราทำการลบ XML Code ที่มีมาให้ตอนสร้าง Project ทิ้งทั้งหมด...
และเลือก Tab Graphical Layout แล้วทำการลาก Relative Layout จากส่วนของ Layout ด้านล่างมา
** จะเห็นได้ว่า เราไม่สามารถที่จะลาก Widget มาวางบน Relative Layout ได้เลย
การใส่ Widget ใน Relative Layout นั้นต้องทำผ่าน XML Coding เท่านั้น
** แต่ข้อดีของ Layout ชนิดนี้ เราจะมาสารถให้ Widget ของเราไปอยู่ตรงไหนของ Layout ก็ได้
     ด้วย XML Code ลองเล่น ๆ ดูครับ คำสั่งมีเยอะแยะมากมาย (ผมก็ยังเล่นไม่หมด)
ยกตัวอย่างง่าย ๆ ครับ

ตามรูปนี้จะเห็นว่า Button และ TextView อยู่ตรงกลาง ในที่นี้ใช้ Relative Layout ครับ
โค้ดที่ได้ก็จะเป็นแบบนี้....


โดยการเข้าถึงพื้นที่ต่าง ๆ บน Relative Layout นั้น ให้ใช้ Keyword คำว่า android:layout_xxx
** xxx เนี่ยเป็นชื่อ method ต่อท้ายต่าง ๆ โดยสามารถเรียกดูได้โดยกด ctrl+space (Mac&Windows)

ขอแนะนำไว้แค่ 2 แบบก่อนนะครับ ^^
เพราะพึ่งเริ่ม.... แหะ ๆ

ยังไงก็ลอง วาดรูปโปรแกรมที่เราต้องการทำคร่าว ๆ ก่อนนะครับ แล้วค่อยลงมือเขียน
จะได้เลือก Layout ที่เหมาะกับโปรแกรมของเรา...
เพราะมันไม่ได้อิสระเหมือน iOS หรือเป็นลำดับขั้นเหมือน Blackberry

Popular posts from this blog

12 วิธี การบริการและดูแลลูกค้าในร้าน Starbucks

"อีสุกอีใส" ประสบการณ์เมื่อต้องมาเป็นตอนอายุ 22

[Android Dev] การติดตั้ง Eclipse+AndroidSDK เพื่อพัฒนาโปรแกรมบน Android