การใช้ ViewPager แสดง View ด้วย PagerAdapter

เมื่อนึกถึงการใช้งาน ViewPager คนที่เคยใช้ก็คงชินกับการใช้ Fragment ในการแสดง Pager แต่ละหน้า (สำหรับคนไม่เคยใช้ ไปอ่านที่นี่ได้เลย)
แต่บางกรณีเราอาจจะเพียงแค่อยากให้ ViewPager แสดง View แทน Fragment เช่น นำ ImageView มาแสดงใน ViewPager คล้ายๆ Image Slider เนื่องจากเราไม่ต้องการเขียนคำสั่งการทำงานใน Pager แต่ละหน้า การใช้ Fragment อาจจะดูเยอะไป บทความนี้เลยจะมาทำตัวอย่างการใช้งาน PagerAdapter ครับ

เราจะมาลองทำ ViewPager ที่แต่ละ Page จะมีรูปแสดงอยู่
อันดับแรกสร้าง Viewpager ใน layout ของ MainActivity ก่อน
activity_main.xml

ส่วนต่อไปจะเป็น ImageView ที่จะ inflate ไปแสดงในแต่ละ page
my_image.xml

มาต่อที่ส่วนของ adapter ให้สร้าง MyPagerAdapter ที่ extends มาจาก PagerAdapter
เพื่อให้การเพิ่ม ลบ View แบบ dynamic เลยมี method ชื่อ addView, removeView ด้วย
MyPagerAdapter.java

ที่ MainActivity สร้างข้อมูล list ของ View ที่จะแสดง แล้ว add เข้าไปใน adapter หลังจากนั้นก็ setadapter ให้กับ ViewPager
MainActivity.java

ทีนี้ ViewPager ก็จะแสดง รูปภาพ ที่เราได้ add เข้าไปใน adapter แล้ว
01
เราสามารถประยุกต์ใช้ View หรือ viewgroup แบบอื่นๆมาใช้กับ PagerAdapter ได้ ซึ่งเหมาะกับการใช้ ViewPager ที่เน้นแค่แสดง View เท่านั้น แต่ถ้าหากว่าแต่ละ page มีการทำงานที่ซับซ้อนก็ควรไปใช้ Fragment แทนวิธีนี้ดีกว่าครับ
ตัวอย่าง code โหลดที่นี่

Comments

comments

Leave a Comment

Your email address will not be published. Required fields are marked *