ANDROID APP
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
การเขียนคำสั่งในลักษณะนี้จะมีประโยชน์ในกรณีที่เราต้องการจะแสดงข้อความหลายครั้ง<br />
ซึ่งเราจะใช้คำสั่งของอินสแตนซ์ในบรรทัดแรกมาใช้ซ้ำ<br />
ในคำสั่ง Toast จะมีคำสั่งอีก 2 บรรทัดที่ใช้ในการกำหนดตำแหน่งของข้อความที่จะแสดง หรือ<br />
ตำแหน่งที่จะวางรูปภาพ ในการกำหนดตำแหน่งของข้อความหรือกำหนดให้แสดงที่กลางจอภาพ เราจะ<br />
ใช้คำสั่ง setGravity ก่อนที่จะเรียกใช้เมธอด show() ดังนี้<br />
tst.setGravity(Gravity.CENTER, tst.getXOffset() / 2,<br />
tst.getYOffset() / 2);<br />
การเพิ่มรูปภาพลงใน Toast จะใช้คำสั่งดังนี้<br />
Toast tst = Toast.makeText(this, “text”, Toast.LENGTH_LONG);<br />
ImageView view = new ImageView(this);<br />
view.setImageResource(R.drawable.my_figure);<br />
tst.setView(view);<br />
tst.show();<br />
กรรมวิธี: การใช้งานข้อความแจ้งเตือน<br />
เราจะทำการแสดงข้อความแจ้งเตือน และแสดงปุ่ม 3 ปุ่มให้ผู้ใช้เลือก โดยใช้การทำงานของ<br />
คลาส AlertDialog โดยตัวอย่างของข้อความที่จะแสดงก็เช่น<br />
m “คะแนนของคุณคือ 80/100 คุณจะลองเล่นระดับนี้ใหม่ หรือจะไปที่ระดับถัดไป หรือจะ<br />
กลับสู่เมนูหลัก”<br />
m “พบความเสียหายในไฟล์รูปภาพ โปรดเลือกไฟล์อื่นๆ หรือออกจากแอพ”<br />
ในส่วนนี้จะแสดงถึงการสร้างตัวเลือกแบบหลายตัวเลือกเพื่อให้ผู้ใช้ได้เลือก ตัวอย่างของ<br />
คำสั่งจะแสดงอยู่ในชุดคำสั่งที่ 3.20<br />
AlertDialog จะเริ่มทำงานด้วยเมธอด create() และกำหนดข้อความที่จะแสดงด้วยเมธอด<br />
setMessage() ส่วนปุ่มทั้ง 3 ปุ่มที่จะแสดงให้ผู้ใช้เลือกนั้น จะใช้เมธอด setButton() และคำสั่ง<br />
สุดท้ายที่จะใช้ในการแสดงข้อความบนหน้าจอก็คือเมธอด show() สำหรับคำสั่งที่อยู่ใน onClick()<br />
นั้นจะเป็นคำสั่งแบบ Callback ซึ่งในกรณีนี้เราจะกล่าวถึงแค่การสร้างปุ่มแบบตัวเลือกเท่านั้น<br />
ชุดคำสั่ง 3.20 ตัวอย่างการใช้งาน AlertDialog<br />
การแจ้งเตือน (Alert)<br />
75<br />
AlertDialog dialog = new AlertDialog.Builder(this).create();<br />
dialog.setMessage("Your final score: " + mScore + "/" + PERFECT_SCORE);<br />
dialog.setButton(DialogInterface.BUTTON_POSITIVE, "Try this level again",<br />
new DialogInterface.OnClickListener() {<br />
public void onClick(DialogInterface dialog, int which) {<br />
mScore = 0;<br />
start_level();<br />
}<br />
});<br />
dialog.setButton(DialogInterface.BUTTON_NEGATIVE, "Advance to next level",<br />
new DialogInterface.OnClickListener() {