บทความ

กำลังแสดงโพสต์จาก ธันวาคม, 2015

การใช้ checkBox ใน listView ด้วย customAdapter

รูปภาพ
โดยปกติ ถ้าใช้ listView เราจะเรียกใช้ adapter ที่มากับ Android Studio คือ android.R.layout.simple_list_item_1 แต่ Adapter ตัวนี้ ใช้ได้เฉพาะกับ ข้อมูลใน listView ที่เป็นตัวอักษร เท่านั้น ถ้าต้องการให้มีภาพ หรือ อย่างอื่น ๆ เช่น checkBox หรือ RadioBox หรือ จัดรูปแบบให้หลากหลาย ก็ไม่สามารถทำได้ เราจึงต้องสร้างรูปแบบเอง และสร้าง Adapter ขึ้นเอง ซึ่งเรียกว่าเป็น customAdapter

ในตัวอย่างต่อไปนี้ จะเป็นการสร้าง listView ที่ประกอบด้วย checkBox และข้อความ ดังภาพ

มีขั้นตอนหลัก ๆ ดังนี้

สร้าง Project ใหม่สร้าง Activity แรก และสร้าง Activity สำหรับหน้าเมนูหลักเพื่อเรียกใช้งาน listBoxสร้าง layout ที่จะใช้เป็นรูปแบบของ listView ในแต่ละรายการ หรือ item ที่ประกอบด้วย checkBox และ textBox หรือกล่องข้อความ ที่จะปรากฏใตแต่ละรายการสร้างไฟล์ java หรือ Class ใหม่ เพื่อให้เป็น customAdapter เพื่อ แปลง หรือปรับข้อมูลที่มีทั้ง checkBox และ  textBox พร้อมทั้งเรียกใช้งานใน Activity ที่ต้องการใช้ listView วิธีการ

การสร้าง Project ใหม่ สร้าง Project ใหม่ ในตัวอย่างนี้ใช้ Android Studio 1.5.1 สร้าง Project ใหม่ ระบ…

การส่งออกบางส่วนของภาพ ใน illustrator cs6

รูปภาพ
สมมุติว่า เราทำ Logo หลายชิ้น ใน Adobe Illustrator CS6 และต้องการบันทึกออกเป็นไฟล์ PDF หรือไฟล์นามสกุลอื่น หรือ ต้องการส่งออกไปยังโปรแกรม Photoshop แต่ต้องการส่งออกเฉพาะบาง Logo เท่านั้น จะทำอย่างไร

ในภาพ ต้องการส่งออก หรือบันทึกเป็นไฟล์เฉพาะโลโก้ด้านซ้ายมือ ที่มีกรอบเป็นสีเหลือบเท่านั้น จะทำอย่างไรดี

มีวิธีหลายวิธี แต่วิธีที่ง่ายที่สุดคือการจัด Artboard ให้คลุมเฉพาะโลโก้ที่ต้องการ แล้วจึงส่งออก หรือบันทึกเป็นไฟล์อื่น ๆ ตามต้องการ

วิธีการ

คลิกเลือกเฉพาะโลโก้ที่ต้องการส่งออก โดยใช้ Selection Tool ลากให้คลุม Artwork ที่ต้องการ จะได้ดังภาพ ไปที่ Object > Artboards > Fit to Selected Art Artboard จะย่อขนาดลงเท่ากับโลโก้ที่เลือกเอาไว้แล้ว ไปที่เมนู File > Save As... หรือ File > Export... Save As เพื่อบันทึกเป็นไฟล์ของ illustrator หรือ PDF หรือ อื่น ๆ Export เพื่อส่งไปยัง Photoshop หรือ Flash หรือส่งออกเป็นภาพ BMP, JPG, WMF สำหรับ Windows Media หรือ เป็นไฟล์นามสกุลอื่น ๆภาพต้วอย่างส่งออกเป็น PDF ส่วนวิธีอื่น ๆ เช่น เลือก Artwork ทั้งหมด แล้ว Shift Click เพื่อยกเลิกการเลือกเฉพาะ Artwork…

การบันทึกอีแมล์ Gmail เป็นไฟล์ PDF

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

วิธีการ

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

onSaveInstanceState()

รูปภาพ
การพัฒนา Application สำหรับ Android phone มีประเด็นที่จะต้องจัดการด้วยตัวเองอย่างหนึ่งคือ เวลาผู้ใช้งานเปลียนมือถือ จากแนวตั้งเป็นแนวนอน โปรแกรมจะปรับสภาพไปสู่สภาพเดิม เหมือนเมื่อเริ่มต้นเข้ามาที่หน้าจอใหม่ ๆ ที่เป็นเช่นนี้ เพราะ Android Studio ต้องการปรับสภาพให้เข้ากับสภาวะใหม่ ดังนั้น เราจึงต้องจัดการ บันทึกสภาพปัจจุบันของหน้าจอเอาไว้ และเมื่อมีการปรับเปลี่ยนสภาพใหม่ ก็ให้ตรวจสอบข้อมูลเดิมพร้อมทั้งบันทึกเอาไว้ และนำกลับมาใช้ให้เหมือนเดิม มิฉะนั้นผู้ใช้อาจจะงงว่า ทำไมข้อมูลหน้าจอจึงเปลี่ยนไป

ยกตัวอย่างเช่น ผู้ใช้กำลังทำข้อสอบถึงข้อที่ 5 บังเอิญว่า อยากจะอ่านข้อความตามแนวนอน จึงหมุนหน้าจอ จากแนวตั้งมาดูตามแนวนอน แต่ผลปรากฏว่า ข้อสอบจากข้อที่ 5 กลับมาเป็นข้อ 1
ที่เป็นเช่นนี้เพราะ เมื่อมีการเปลี่ยนแนว หรือ Orientation ของมือถือ วงจรชีวิตของหน้าจอนั้น ๆ จะยุติลง และเริ่มต้นใหม่ โดยใช้ค่าเริ่มต้นที่มีอยู่ ดังนั้นจึงกลับไปสู่สภาพเดิม
การจัดเก็บสภาพของหน้าจอ ด้วย onSaveInstanceState()
ในกรณีตัวอย่างข้อสอบข้างต้น มีการกำหนดตัวแปรคือ thisQuestionNum เพื่อเก็บหมายเลขข้อของข้อสอบ เพื่อนำข้อสอบม…

การสร้าง DialogFragment ใน Android Studio

รูปภาพ
การสร้าง Dialog เพื่อแสดงข้อความแจ้งเตือน หรือให้ข่าวสารแก่ผู้ใช้งานมือถือ Android โดยใช้  Android Studio ทำได้หลายอย่าง แต่วันนี้ จะพูดถึงการใช้ Fragment สำหรับสร้าง Dialog ซึ่งมีข้อดี คือ สามารถจัดการรูปแบบได้เองสะดวกดี เพราะใช้ Layout ที่สร้างเอง จึงนำเอาภาพ ข้อความมาจัดเรียงได้ ในตัวอย่างนี้ จะสร้าง DialogFragment โดยให้คลิกจากเมนูใน OverFlow Menu แล้วมาที่ Dialog ที่สร้างขึ้น โดยใช้ Android Studio 1.5.1

ภาพหน้าจอ DialogFragment ที่จะสร้าง ในครั้งนี้

ขั้นตอนการสร้าง

สร้าง Project ใหม่สร้าง Layout ที่ต้องการให้แสดงเป็น Dialogสร้าง Java Class สำหรับ DialogFragmentเรียกใช้งาน ที่ OverFlow menu สร้าง Project ใหม่ สร้าง Project ใหม่ ตั้งชื่อตามต้องการกำหนด API 11 และ Blank Activity สร้าง Layout สำหรับให้แสดงเป็น Dialog นำภาพไปใส่ไว้ในห้อง Drawable โดยใช้วิธี Copy แล้ว Paste ใน Android Studioสร้าง Layout โดยคลิกขวาที่ layout เลือก New > Layout Resource File
ตั้งชื่อว่า df_demo   นำ ImageView  TextView และปุ่ม พร้อมทั้งนำภาพและข้อความมาวางบน Layout ดังภาพ TextView ให้กำหนด LayoutWidth เป็น …