×
Attention!
Your ePaper is waiting for publication!
By publishing your document, the content will be optimally indexed by Google via AI and sorted into the right category for over 500 million ePaper readers on YUMPU.
This will ensure high visibility and many readers!
PUBLISH DOCUMENT
No, I renounce more range.
Your ePaper is now published and live on YUMPU!
You can find your publication here:
Share your interactive ePaper on all platforms and on your website with our embed function
⬤
⬤
Android App Development ฉบับสมบูรณ์
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
การสร้างหน้าจอส่วนต่างๆ ของเกม<br />
ในส่วนนี้จะเป็นการสร้างหน้าจอส่วนต่างๆ ของเกม ซึ่งแบ่งออกเป็น 5 ส่วนดังนี้<br />
1. การสร้างหน้าจอเมนูสำหรับเลือกรูปแบบการเล่น<br />
2. การสร้างหน้าจอสำหรับป้อนชื่อผู้เล่น<br />
3. การสร้างหน้าจอสำหรับเล่นเกม<br />
4. การสร้างหน้าจอเมื่อจบเกม<br />
5. การแก้ไขไฟล์ <strong>Android</strong>Manifest.xml<br />
การสร้างหน้าจอเมนูสำหรับเลือกรูปแบบการเล่น<br />
ในส่วนนี้จะเป็นการสร้างหน้าจอสำหรับเลือกรูปแบบการเล่น โดยจะแบ่งออกเป็น 2 แบบคือ<br />
• แบบเล่นคนเดียว<br />
• แบบเล่น 2 คน<br />
ซึ่งมีขั้นตอนดังต่อไปนี้<br />
1. สร้างไฟล์ home.xml ในส่วนของ res/layout และแก้ไขหน้าจอดังโค้ด XML ดังต่อไปนี้<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
2<br />
3<br />
4<br />
กาหนดคุณสมบัติของปุ่ม one player<br />
กาหนดคุณสมบัติของปุ่ม two player<br />
กาหนดคุณสมบัติของปุ่ม Exit<br />
กาหนดคุณสมบัติของ Layout<br />
248<br />
<strong>Android</strong> <strong>App</strong> <strong>Development</strong> <strong>ฉบับสมบูรณ์</strong>
3. สร้างไฟล์ SimpleXOAI.java และเขียนโค้ดคำนวณการทำเครื่องหมายดังนี้ package com.android.example.xogame; public class SimpleXOAI { public static int calculateMove(SimpleXO game, int player) { if (game.isSpaceLeft() == false) return 0; int row, column, score, winner; int bestRow, bestColumn, bestScore, bestWinner; int otherPlayer = (player == 1) ? 2 : 1; bestRow = -2; bestColumn = -2; bestScore = -2; bestWinner = -2; for (row = 0; row < game.getSize(); row++) { for (column = 0; column < game.getSize(); column++) { if (game.getLocation(row, column) == 0) { SimpleXO copy = new SimpleXO(game); copy.makeMove(row, column, player); if (copy.getWinner() == player) { } score = 1; winner = player; game.makeMove(row, column, player); return winner; winner = calculateMove(copy, otherPlayer); if (winner == player) { score = 1; } else if (winner == 0) { score = 0; } else { score = -1; } } } if (score > bestScore) { bestRow = row; bestColumn = column; bestWinner = winner; bestScore = score; } } } } game.makeMove(bestRow, bestColumn, player); return bestWinner; คนเดียว คลาส SimpleXOAI ถูกสร้างเพื่อคำนวณการทำเครื่องหมายของผู้เล่นในกรณีที่ผู้เล่นเลือกเล่นแบบ บทที ่ 12 การพัฒนาเกมแบบ 2 มิติ 247
การสร้างหน้าจอส่วนต่างๆ ของเกม ในส่วนนี้จะเป็นการสร้างหน้าจอส่วนต่างๆ ของเกม ซึ่งแบ่งออกเป็น 5 ส่วนดังนี้ 1. การสร้างหน้าจอเมนูสำหรับเลือกรูปแบบการเล่น 2. การสร้างหน้าจอสำหรับป้อนชื่อผู้เล่น 3. การสร้างหน้าจอสำหรับเล่นเกม 4. การสร้างหน้าจอเมื่อจบเกม 5. การแก้ไขไฟล์ <strong>Android</strong>Manifest.xml การสร้างหน้าจอเมนูสำหรับเลือกรูปแบบการเล่น ในส่วนนี้จะเป็นการสร้างหน้าจอสำหรับเลือกรูปแบบการเล่น โดยจะแบ่งออกเป็น 2 แบบคือ • แบบเล่นคนเดียว • แบบเล่น 2 คน ซึ่งมีขั้นตอนดังต่อไปนี้ 1. สร้างไฟล์ home.xml ในส่วนของ res/layout และแก้ไขหน้าจอดังโค้ด XML ดังต่อไปนี้ 2 3 4 กาหนดคุณสมบัติของปุ่ม one player กาหนดคุณสมบัติของปุ่ม two player กาหนดคุณสมบัติของปุ่ม Exit กาหนดคุณสมบัติของ Layout 248 <strong>Android</strong> <strong>App</strong> <strong>Development</strong> <strong>ฉบับสมบูรณ์</strong>
Page 3 and 4: Android App Development ฉบั
Page 5 and 6: สุดท้ายนี้ส
Page 7 and 8: บทที่ 4 พัฒนา
Page 9 and 10: IV ทดสอบการทำ
Page 11 and 12: การแปลงชนิด
Page 13 and 14: ผู้อ่านสามา
Page 15 and 16: • Dalvik Virtual Machine (VM) เ
Page 17 and 18: แอพพลิเคชัน
Page 19 and 20: ความแตกต่าง
Page 21 and 22: • Broadcast and Intent Receiver
Page 23 and 24: สำหรับ Android นั
Page 25 and 26: ในหนังสือเล
Page 27 and 28: 1. เริ่มต้นให
Page 29 and 30: การติดตั้งโ
Page 31 and 32: 3. Eclipse จะแสดงหน
Page 33 and 34: 13. จะปรากฏโปร
Page 35 and 36: 20. เขียนโค้ดเ
Page 37 and 38: ผู้อ่านสามา
Page 39 and 40: 3. จะปรากฏไดอ
Page 41 and 42: 4. ได้ผลลัพธ์
Page 43 and 44: 15. รอสักครู่ ร
Page 45 and 46: ทั้งนี้ผู้อ
Page 47 and 48: 12. คลิกปุ่ม 13.
Page 49 and 50: 9. รอสักครู่ เ
Page 51 and 52: 5. จะปรากฏไดอ
Page 53 and 54: สำหรับการรั
Page 55 and 56: ซึ่งเนื้อหา
Page 57 and 58: 8. จะปรากฏไดอ
Page 59 and 60: 2. จะปรากฏไดอ
Page 61 and 62: 13. จากนั้นเปิ
Page 63 and 64: 1. ดับเบิลคลิ
Page 65 and 66: 8. ในกรณีที่ผ
Page 67 and 68: 10. แก้ไขข้อคว
Page 69 and 70: นอกจากกล่อง
Page 71 and 72: ้ ผลลัพธ์เมื
Page 73 and 74: 2. รอสักครู่ ก
Page 75 and 76: ผู้อ่านยังส
Page 77 and 78: การส่งออกโป
Page 79 and 80: 10. เลือกโปรเจ
Page 81 and 82: 2. จะปรากฏไดอ
Page 83 and 84: ่ เริ่มต้นพั
Page 85 and 86: สรุปท้ายบท ใ
Page 87 and 88: เริ่มต้นสร้
Page 89 and 90: 17. จะปรากฏโปร
Page 91 and 92: 7. คลิกแท็บ main.xm
Page 93 and 94: จากการเพิ่ม
Page 95 and 96: } } float inputValue = Float.parseF
Page 97 and 98: 12. จากนั้นจะม
Page 99 and 100: 19. รอสักครู่ ก
Page 101 and 102: สรุปท้ายบท ใ
Page 103 and 104: ในหัวข้อนี้
Page 105 and 106: 11. จะปรากฏไดอ
Page 107 and 108: ผู้อ่านสามา
Page 109 and 110: 3. แก้ไขโค้ดโ
Page 111 and 112: ImageView : แสดงรูป
Page 113 and 114: การเพิ่มอีเ
Page 115 and 116: 4. รันแอพพลิเ
Page 117 and 118: 5. จะได้ผลลัพ
Page 119 and 120: 2. จะปรากฏไดอ
Page 121 and 122: 14. คลิกแท็บ Graphi
Page 123 and 124: 2. จะปรากฏไดอ
Page 125 and 126: Frame Layout เฟรม เลย
Page 127 and 128: Absolute Layout แอบโซล
Page 129 and 130: 6. แก้ไขโค้ดใ
Page 131 and 132: 3. จะปรากฏหน้
Page 133 and 134: แบบฝึกหัดท้
Page 135 and 136: 2. จะปรากฏไดอ
Page 137 and 138: 7. เมื่อรันแอ
Page 139 and 140: android:paddingLeft="4dp" android:l
Page 141 and 142: Image Switcher View Image Switcher
Page 143 and 144: import android.widget.AdapterView.O
Page 145 and 146: Options Menu Options Menu เป็
Page 147 and 148: 5. แก้ไขโค้ด Java
Page 149 and 150: TabWidget TabWidget เป็นก
Page 151 and 152: 3. ได้หน้าตาข
Page 153 and 154: 1.7 ตั้งชื่อแอ
Page 155 and 156: import android.widget.TextView; pub
Page 157 and 158: 2. สร้างไฟล์ arra
Page 159 and 160: 7. เมื่อรันแอ
Page 161 and 162: การจัดวางหน
Page 163 and 164: 4. คลิกแท็บ Graphic
Page 165 and 166: 6. คลิกแท็บ Graphic
Page 167 and 168: สรุปท้ายบท ใ
Page 169 and 170: หลักการทำงา
Page 171 and 172: 8. จะปรากฏไดอ
Page 173 and 174: • ส่วนที่ 2 จะ
Page 175 and 176: เขียนโค้ดกำ
Page 177 and 178: } } } }); } Toast.LENGTH_SHORT).sho
Page 179 and 180: 2. เขียนโค้ด Over
Page 181 and 182: 5. จะปรากฏ Emulator 2
Page 183 and 184: แบบฝึกหัดท้
Page 185 and 186: ในบทนี้ผู้เ
Page 187 and 188: กำหนดสิทธิ์
Page 189 and 190: • listener คือ ออบเ
Page 191 and 192: 2. คลิกเลือก Devi
Page 193 and 194: การแสดงผลค่
Page 195 and 196: กำหนดสิทธิ์
Page 197 and 198: mapView = (MapView) findViewById(R.
Page 199 and 200: หากผู้อ่านร
Page 201 and 202: traffic.setOnCheckedChangeListener(
Page 203 and 204: 2. แก้ไขโค้ด Java
Page 205 and 206: class MapOverlay extends ItemizedOv
Page 208 and 209: 10 การพัฒนาแอ Page 210 and 211: 1. สร้างโปรเจ Page 212 and 213: 4. แก้ไขโค้ด Java Page 214 and 215: } Toast.makeText(this, text, Toast. Page 216 and 217: -- ServerThread create when client Page 218 and 219: พอร์ต (Port) ใช้ห Page 220 and 221: public boolean sflag = false; publi Page 222 and 223: ทดสอบการทำ Page 224: 9. พิมพ์ข้อคว Page 227 and 228: ทั้งนี้ผู้อ Page 229 and 230: 7. จะปรากฏไฟล Page 231 and 232: } public void setPrice(double price Page 233 and 234: อธิบายโค้ดก Page 235 and 236: การใช้งานฐา Page 237 and 238: 2 3 4 5 6 กาหนด Page 239 and 240: จะได้ผลลัพ Page 241 and 242: public void editBook(final Book boo Page 243 and 244: public class SQLiteDatabaseActivity Page 245 and 246: } public void onClick(View v) { // Page 247 and 248: } String value_publisher = publishe Page 249 and 250: } button_save.setText("Update"); bu Page 251 and 252: แบบฝึกหัดท้ Page 253 and 254: สำหรับการออ Page 255 and 256: public SimpleXO(int size) { board = Page 257: public void setWin_row(int win_row) Page 261 and 262: } }); intent.putExtra("PLAYER", 2); Page 263 and 264: กาหนดคุณสมบ Page 265 and 266: ผู้อ่านจะสั Page 267 and 268: } public void drawElementX(Canvas c Page 269 and 270: 2. สร้างไฟล์ Game Page 271 and 272: การสร้างกรา Page 273 and 274: paint.setColor(Color.rgb(246, 107, Page 275 and 276: ในการคลิกที Page 277 and 278: if (extras != null) { int porson = Page 279 and 280: } } } paint.setColor(Color.argb(200 Page 281 and 282: สรุปท้ายบท ใ Page 283 and 284: โดยเนื้อหาใ Page 285 and 286: android:layout_width="fill_parent" Page 287 and 288: long curTime = System.currentTimeMi Page 289 and 290: import android.view.Window; import Page 291 and 292: } } } catch (InterruptedException i Page 294 and 295: 14 เทคนิคในกา Page 296 and 297: การใช้งานเค Page 298 and 299: Devices Devices เป็นเค Page 300 and 301: 1 เลือก 6 แสดงข Page 302 and 303: ดังนี้ โดยมี Page 304: สรุปท้ายบท ใ Page 307 and 308: การจัดเตรีย Page 309 and 310: 3. ตรวจสอบการ
Page 311 and 312: 6. จะปรากฏไดอ
Page 313 and 314: 17. คลิกปุ่ม เพ
Page 315 and 316: 4. จะปรากฏหน้
Page 317 and 318: 13. กำหนดเงื่อ
Page 319 and 320: 20. รอประมาณ 10-30
Page 321 and 322: 2. ให้ผู้อ่าน E
Page 323 and 324: 5. คลิกปุ่ม เพ
Page 326 and 327: 16 การติดตั้ง
Page 328 and 329: 5. ดำเนินการต
Page 330 and 331: 10. จะปรากฏหน้
Page 332 and 333: การส่งออกไฟ
Page 334 and 335: 10. คลิกปุ่ม 9 ก
Page 336 and 337: 4. พิมพ์คำสั่
Page 338 and 339: Appendix ความรู้เ
Page 340 and 341: ตัวอย่างเช่
Page 342 and 343: ลำดับความสำ
Page 344 and 345: } } str = "37"; intTest = Integer.p
Page 346 and 347: รูปแบบการใช
Page 348 and 349: ตัวแปรอาร์เ
Page 350 and 351: โดยที่ type เป็
Page 352 and 353: โดยที่การตั
Page 354: } weightCat = weightCat - dblWeight
Page 357 and 358: 13. James F. Kurose and Keith W. Ro
Page 359 and 360: B Button...........................
Page 362: ISBN 978-616-200-361-5
×
Inappropriate
Loading...
Flag as Inappropriate
Cancel
×
Inappropriate
You have already flagged this document. Thank you, for helping us keep this platform clean. The editors will have a look at it as soon as possible.
×
Mail this publication
Loading...
Delete template?
Are you sure you want to delete your template?
×
DOWNLOAD ePAPER
This ePaper is currently not available for download. You can find similar magazines on this topic below under ‘Recommendations’.