20.11.2016 Views

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() {

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!