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.
ชุดคำสั่งที่ 2.7 จะแสดงถึงการจัดก็บและเรียกคืนค่าสถานะของอินสแตนซ์ โดยใช้ตัวแปรแบบ<br />
ข้อความและตัวแปรแบบทศนิยมในการเก็บค่าดังกล่าว<br />
float[] localFloatArray = {3.14f, 2.718f, 0.577f};<br />
String localUserName = "Euler";<br />
มัลติเพิลแอคทิวิตี้ (Multiple Activities)<br />
ชุดคำสั่งที่ 2.7 ตัวอย่างของ onSaveInstanceState() และ onRestoreInstanceState()<br />
35<br />
@Override<br />
protected void onSaveInstanceState(Bundle outState) {<br />
super.onSaveInstanceState(outState);<br />
//save the relevant information<br />
outState.putString("name", localUserName);<br />
outState.putFloatArray("array", localFloatArray);<br />
}<br />
@Override<br />
public void onRestoreInstanceState(Bundle savedInstanceState) {<br />
super.onRestoreInstanceState(savedInstanceState);<br />
//restore the relevant information<br />
localUserName = savedInstanceState.getString("name");<br />
localFloatArray = savedInstanceState.getFloatArray("array");<br />
}<br />
ในคำสั่ง onCreate() จะมี Bundle savedInstanceState อยู่ด้วย ในกรณีที่แอคทิวิตี้เริ่ม<br />
ทำงานอีกครั้งหลังจากที่ก่อนหน้านี้ได้ปิดการทำงานของเครื่องไป ข้อมูลสถานะที่จัดเก็บจากคำสั่ง<br />
onSaveInstanceState() จะถูกส่งค่าไปยังคำสั่ง onCreate() ซึ่งค่าเหล่านี้จะใช้ร่วมกับคำสั่ง<br />
onRestoreInstanceState() เพื่อเรียกคืนสถานะเดิมให้แก่อินสแตนซ์<br />
มัลติเพิลแอคทิวิตี้ (Multiple Activities)<br />
แอพจะประกอบด้วยแอคทิวิตี้อย่างน้อยหนึ่งอย่าง ในแอพที่ซับซ้อนจะประกอบด้วยการทำงาน<br />
ร่วมกันของแอคทิวิตี้หลายตัว ยกตัวอย่างแอพเกมจะมีแอคทิวิตี้ เช่น ส่วนของเกมและส่วนของการ<br />
แสดงคะแนน หรือในแอพประเภทโน้ตแพดก็จะประกอบด้วยแอคทิวิตี้ 3 อย่าง เช่น การดูลิสต์ของ<br />
โน้ต การอ่านโน้ตที่เลือกไว้ และการแก้ไขโน้ต<br />
แอคทิวิตี้หลักจะถูกประกาศไว้ในไฟล์ AndroidManifest ซึ่งแอคทิวิตี้นี้จะเริ่มทำงานเมื่อแอพ<br />
เริ่มทำงาน และแอคทิวิตี้สามารถเรียกใช้งานแอคทิวิตี้อื่นๆ ได้โดยใช้เหตุการณ์หรืออีเวนต์ต่างๆ มา<br />
กระตุ้น เมื่อแอคทิวิตี้ตัวที่ 2 ถูกเรียกใช้งาน แอคทิวิตี้หลักก็จะหยุด (Pause) ไว้ เมื่อแอคทิวิตี้ที่ 2<br />
ทำงานเสร็จแอคทิวิตี้หลักก็จะกลับมาทำงานต่อ