วันอังคารที่ 11 กุมภาพันธ์ พ.ศ. 2557

การสร้าง Action Overflow Menu บนระบบปฏิบัติการ Android


ในที่นี้จะทำการสลับระหว่าง 2 view คือ และ มาเริ่มกันเลยค่ะ

1. สร้าง Project  ใหม่โดยไปที่ new > Android Application Project

2. ลังจากนั้นจะได้ MainActivity.java และ activity_main.xml (หรือใครจะเปลี่ยนชื่อระหว่างขั้นตอนการ new project  ก็ไม่ว่ากันค่ะ)

3. ใน activity_main.xml เราสร้าง Text View ขึ้นมาและกำหนดค่าลงไปคือ 1



4.       สร้างไฟล์ .xml ขึ้นมาใหม่อีกหนึ่งไฟล์ โดยไปที่ layout > new > Android XML File


1  5. ตั้งชื่อและเลือก Root Element เป็นแบบ Relative Layout จากนั้นกด finish (ในที่นี้ผู้เขียนตั้งชื่อเป็น grid_layout.xml ค่ะ)


6. ใน grid_layout.xml เราสร้าง Text View ขึ้นมาและกำหนดค่า  ลงไป



7.  ไปที่ menu จากนั้นเปิด main.xml ขึ้นมา เขียนโค้ดดังนี้

8. เปิด MainActivity.java ขึ้นมา  ในส่วนของเมนูเราจะกำหนดค่าดังนี้เพื่อเรียกเมนูที่กำหนดไว้มาใช้งาน



อธิบายโค้ดนิดนึงนะคะ

     ในกรณีที่ เราเลือก menu_1 โปรแกรมจะเรียก method onCreate(Bundle savedInstanceState) มาทำงาน   โดยตัว method นี้จะเรียกใช้ activity_main.xml


      แต่ถ้าเราเลือก menu_2 โปรแกรมจะเรียกอีก method มาทำงานนั่นคือ onCreate2 ที่สร้างขึ้นมาใหม่มาทำงาน โดยตัว 
method นี้จะเรียกใช้ grid_layout.xml


จากนั้นเรามาลองรันดูค่ะ

ผลจากการรันโปรแกรม




เกร็ดเล็กเกร็ดน้อย

ในแอนดรอยด์รุ่นเก่าๆ จะมีปุ่มเมนูมาให้ เช่น เราสามารถกดที่ปุ่มนี้ได้เลย




แต่ในแอนดรอยด์รุ่นใหม่ๆ ปุ่มนี้จะโดนตัดออกไป เวลาแสดงเมนูจึงจะแสดงตรง Action Bar ให้อัตโนมัติ  



แต่ในกรณีที่เราต้องการให้แอนดรอยด์รุ่นเก่าๆ มีสัญลักษณ์  ขึ้นที่ Action Bar สามารถเขียนคำสั่งดังนี้