Tutorial androidstudio masterung v2014

Page 1

อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

1

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง มาสเตอร์ อึ่ง Talk โลกเราเข้าสู่ยุค Create แล้ว เราไม่ได้อยู่ใน ยุค IT แล้ว นะครับ เป็น ยุคที่ ศิลปิน ต่างๆ รวมไปถึง โปรแกรมเมอร์ เพื่องฟู น่าจะจริง เพราะมองจาก อุปกรณ์ ต่างๆ ที่ รายล้อม รอบตัวเรา จะต้องมีโปรแกรม ควมคุม การทํางาน ตลอด ใครจะไปคิดว่า แม้นแต่ TV ยังต้องมี ระบบปฎิบัติการ มีโปรแกรมประยุค ควบคุมการทํางาน เลย

แอนดรอยด์

ระบบปฎิบัติการที่มี พื้นฐานบนลินุก ทํางาน บนอุปกรณ์ ที่มีหน้าจอ สัมผัส ผู้คิดค้น ก็คือ บริษัท แอนดรอยด์ ซึ่ง ต่อมา Google ก็ ซื้อ แอนดรอยด์ มาพัฒนาต่อ

Open Handset Allience

เป็นการรวมตัว, รวมทุน กันของบริษัท การสือสาร, คอมพิวเตอร์ ชั้นนํา 76 บริษัท มีจุดประสงค์ เพื่อ พัฒนาแอนดรอยด์ ให้เป็น OpenSource และ กําหนด ทิศทางของการ พัฒนาระบบปฎิบัติการแอนดรอยด์

เบสิกแอนดรอยด์ กับ มาสเตอร์ อึ่ง

เป็นคอร์สพื้นฐานเริ่มต้น สําหรับการศึกษาการเขียนโค้ด แอนดรอยด์ มุ่งเน้นให้ ผู้เรียน สามารถต่อยอด และ พัฒนาการโค้ดแอนดรอยด์ จาก Content ต่างๆ ที่ เผยแพร่ ในโลกนี่ได้ การเรียน จะเน้นไปที่การทํา Workshop และ เรียนรู้จาก สิ่งที่ทําได้ ครับ สามารถดู บทเรียนเพิ่มเติมได้จาก http://androidthai.in.th หรือ https://www.facebook.com/android.Training.by.EWTC

มาสเตอร์ อึ่ง 2

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

สารบัญ มาสเตอร์ อึ่ง Talk ............................................................................................................................... 2 แอนดรอยด์ ................................................................................................................................................... 2 Open Handset Allience .................................................................................................................... 2 เบสิกแอนดรอยด์ กับ มาสเตอร์ อึ่ง ......................................................................................................................... 2 มาสเตอร์ อึ่ง ......................................................................................................................................... 2 การติดตั้ง จาวา ...................................................................................................................................... 5 ไป Download JDK และ ติดตั้งซะ ............................................................................................................... 5 การกำหนด PATH ให้ จาวา .................................................................................................................... 6 การติดตั้ง Android Studio ........................................................................................................... 10 การ Update android Studio ................................................................................................... 14 ปิด Firewall ก่อน HelloWorld .................................................................................................. 18 ทําการปิด Firewall ซะ ............................................................................................................................. 19 HelloWorld ด้วย android Studio .......................................................................................... 20 ตั้งค่าตามนี่ก่อน ............................................................................................................................................ 20 การ Update SDK ......................................................................................................................... 23 Internet ไม่เสถียร ติดๆดับๆ ....................................................................................................................... 24 หรือ พยายามอัพเดท SDK แล้วไม่ใม่สามารถ ทําได้ ................................................................................................. 24 การสร้าง Emulator ........................................................................................................................ 25 เปิด Android Virtual Device Manager ......................................................................................... 25 MyAnimal WorkShop ........................................................................................................... 29 New Project ...................................................................................................................................... 29 การกำหนด Text ....................................................................................................................................... 34 การกำหนด TextSize ............................................................................................................................... 35 กำหนด Style both ................................................................................................................................. 36 เพิ่ม ImageView .................................................................................................................................. 37 กำหนดตําแหน่งที ่ alignComponent ........................................................................................................ 41 Create Panal ด้วย Linear Layout (Horizontal) ......................................................................... 41 Button on Linear Layout .............................................................................................................. 43 กำหนด Text ให้ Button ......................................................................................................................... 44 layout Weight ให้เป็น 1 ...................................................................................................................... 45 ปรับสีโดยการใช้ textColor ........................................................................................................................ 48 การสร้าง Scrolling ................................................................................................................................. 50 Scrolling ............................................................................................................................................ 51

3

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ทดสอบโค้ด บน Emulator ........................................................................................................................ 53

มาโค้ดดิ้งแอนดรอยด์ กัน ......................................................................................................................... 56 ทําความรูปจัก เมธอด ต่างๆ ...................................................................................................................... 57 เมธอด onCreate ................................................................................................................................... 57 เมธอด onCreateOptionMeny ........................................................................................................... 57 เมธอด onCreateOptionItemSelected ............................................................................................ 57 คลาส PlaceholderFragment ................................................................................................... 58 ประกาศตัวแปร .................................................................................................................................... 58 การ Initial Widget ..................................................................................................................... 59 การ setOnClickListener ........................................................................................................... 60 การนําเสียง มาใช้ฎในแอพแอนดรอยด์ ............................................................................................................ 63 Create Android resource directory .......................................................................................... 63 Create Method ที่สืบทอด MediaPlayer ........................................................................................... 65 การทดสอบโค้ดแอนดรอยด์ บน เครื่องจริง ..................................................................................................... 66 แอพแลกเปลี่ยนเงินตรา ........................................................................................................................... 68 New Project MyExchangeMoney ............................................................................................... 68 ปรับ Wallpaper ให้ได้แบบนี ้ Copy ภาพที่ต้องการ ไปไว้ที่ drawable-­‐mdpi ................................................ 73 การ Create Activity ................................................................................................................... 75 ที่คลาส Placeholderfragment ........................................................................................................... 77 สร้าง RunAbleTheard ........................................................................................................................ 78 การใส่เสียงบน Splash Screen ......................................................................................................... 79 Create Object MediaPlayer ......................................................................................................... 81 การใช้ เมธอด finish(); ............................................................................................................................. 82 การกำหนด inputType ให้ editText ..................................................................................................... 84 การกำหนด cheched ให้ RadioButton .................................................................................................. 85 Declaration ตัวแปร ที่ควบคุม Widget ................................................................................................... 86 Initial Widget กับ ตัวแปรที่ประกาศ ......................................................................................................... 87 การหาช่องว่าง บน editText ....................................................................................................................... 88 Android Device Monitor ...................................................................................................... 88 Logcat Message Fillter Setting ................................................................................................... 89 Alert Dialog .............................................................................................................................. 90 Create New Class ............................................................................................................................ 91 การใช้ RadioGroup และ RadioButton .............................................................................................. 95 Create Method ShowAnswer .................................................................................................... 103

4

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

การติดตั้ง จาวา

แอนดรอยด์ ใช้ จาวา เป็นภาษา ในการพัฒนา นั้นหมายความว่า ในเคลื่องคอมพิวเตอร์ ที่ใช้ พัฒนา ไม่ว่าจะ มาจาก Platform ใดๆ ก็ตาม (ลินุก, แมค หรือ Windows) ต้องมี JDK ติดตั้งอยู่

ไป Download JDK และ ติดตั้งซะ ไปโหลดจาวาจาก http://www.oracle.com/technetwork/java/javase/downloads/index.html

โหลดมาแล้วก็ ทําการติดตั้ง ซะ

5

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

การกำหนด PATH ให้ จาวา

ก่อนที่เราจะ ติดตั้ง android Studio (บน Windows เท่านั้น Linux และ mac ไม่ต้องทํา) ต้อง กําหนด PATH เพื่อให้ android Studio มองเห็น จาวา มาเริ่มต้นกันครับ เปิด System คลิกที่ Advanced system settings

ที่ System Properties ให้คลิกที่ Environment Variable

6

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

คลิกที่ New

7

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง และกําหนดค่า ตามนี้

โดยในวันที่ มาสเตอร์ เขียนคู่มือ JDK1.7.0_40 เป็นเวอร์ชั่น ล่าสุด ถ้าผู้เรียนใช้เวอร์ชั่น อื่น ต้องกําหนดให้ตรง กับ เวอร์ชั่น ที่ผู้เรียนใช้ โดยไปดูที่ Path ที่เก็บ jdk ของตนเอง

เสร็จแล้วจะได้ผลลัพธ์ แบบนี้

8

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ทําแบบเดิม แต่กําหนดค่าตามนี่

ตรวจสอบ การกำหนด PATH จาวา ที่ได้

9

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

การติดตั้ง Android Studio

ไปโหลด Android Studio จาก http://developer.android.com/sdk/installing/studio.html

10

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

Download android Studio เสร็จแล้ว เราก็ ดับเปิลคลิก เพื่อทําการ ติดตั้งได้เลย

ดําเนินตามขั้นตอนไปเรื่อยๆ เลยครับ

11

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ตรงนี่สําคัญนะครับ ถ้าเรา กําหนด Path ของ จาวา ไม่ถูก android Studio จะไม่ยอมให้ ติดตั้ง

มาสเตอร์ เลือกติดตั้ง ให้คนอื่นใช้ด้วย 12

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

มาสเตอร์ ขอข้ามนะครับ ไปจบตอน Finish เพื่อเปิด android Studio เลย

13

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การ Update android Studio

เมื่อเราเปิด โปรแกรม android Studio ขึ้นมาครั้งแรก ตัว android Studio จะถามหาแหล่ง บันทึก โค้ดที่เขียนได้ แบบนี้ ให้ OK ไปครับ หรือ จะ Brown ไปที่ๆ ต้องการก็ได้

ตัว android Studio จะถามหา ตําแหน่ง path ที่ใช้เก็บ โค้ดที่จะเขียน

14

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ได้มาละ android Studio แต่เป็น เวอร์ชั่นเก่าอยู่ ก่อนที่เราจะทํางาน กับ android Studio ต้อง Update ก่อน โดยคลิกที่ Check

android Studio จะ Update จนได้แบบนี้ และ ขอ Restart ใหม่

15

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

โหลด เวอร์ชั่นใหม่

ติดตั้ง เวอร์ชั่นใหม่ ที่ได้ เสร็จแล้ว จะ Restart ใหม่

ได้มาละ android Studio เวอร์ชั่นล่าสุด (วันที่ มาสเตอร์ เขียน คู่มือ android Studio 0.3.1 เป็นเวอร์ชั่นล่าสุด)

16

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

17

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง ปิด Firewall ก่อน HelloWorld

ก่อนที่เราจะ HelloWorld สําหรับเครื่อง Windows ต้องปิด Firewall หรือ ระบบ Antivirus ต่างๆ ก่อน เพราะการ Start Project ครั้งแรก android Studio จะโหลด gradle เข้ามาติดตั้งเสริม

18

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ทําการปิด Firewall ซะ

19

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

HelloWorld ด้วย android Studio

เดี๋ยวเรามา สร้างโปรเจ็คแรกที่ชื่อว่า HelloWorld กัน New Project ขึ้นมาเลยครับ

ตั้งค่าตามนี่ก่อน

20

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง และ Next จนจบกระบวนการเลยครับ ตัว android Studio จะโหลด gradle มาติดตั้งในเครื่องของเรา กระบวนการนี้จะ ทําเมื่อ Start Project แรก โปรเจ็คหน้า ก็ไม่ทําแล้วครับ ระวังเรือ่ ง Firewall ของ Windows ด้วยนะครับ ถ้าปรากฎขึ้นมา ให้ allow ไปครับ

21

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง รอจนกระบวนการเสร็จ

น่าจะได้หน้าตาแบบนี้

22

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การ Update SDK

เปิด SDK Manager ออกมา โดยการไปที่ Tools > Android > SDK Manager และ อัพเดท SDK ตามที่ android Studio แนะนำ

Error ที่เกิดจากการ ติดตั้ง android Studio 23

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง Internet ไม่เสถียร ติดๆดับๆ

ลองตรวจสอบระบบ Internet หรือ ปิด Antivirus ก่อน

หรือ พยายามอัพเดท SDK แล้วไม่ใม่สามารถ ทําได้ อันนี้หนักหน่อย ต้องถอด android Studio ใหม่ และติดตั้งใหม่ และ ลองอัพเดทดู

24

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง เมื่ออัพเดท SDK เสร็จ ต้อง Restart android Studio การ Error ก็จะไม่มีให้เห็นอีก

ลอง Restart android Studio ขึ้นมาใหม่

การสร้าง Emulator

ในการเขียนโค้ดแอนดรอยด์ จะต้องมีกระบวนการในการทดสอบโค้ดแอนดรอยด์ ถ้าโค้ดไม่มีการใช้ Service ใน โทรศัพย์ มากนักเรามัก จําลองมือถือแอนดรอยด์ (Emulator) ในเครื่องคอมพิวเตอร์ของเรา

เปิด Android Virtual Device Manager ที่นี่ครับ

คลิกที่ New เพื่อสร้าง Emulator 25

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

กําหนดค่าต่างๆ ตามนี้

26

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

กลับมาที่ android Virtual Device Manager ก็จะเห็น Emulator ที่เราสร้างขึ้นไว้

คลิกที่ Start และ Scale 27

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ตัว android Studio ก็จะ Start Emulator แบบนี้

28

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

MyAnimal WorkShop

เป็น WorkShop แรกของเรา ในตัว WorkShop นี่มุ่งการเรียนรุ้การใช้ onClickListener

New Project

29

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง และ Set Up ค่าโปรเจ็คตามนี่

30

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ในช่วงนี่ ถ้า Firewall Windows ให้ Allow ไปก่อนนะครับ

31

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง ได้มาละ โปรเจ็คใหม่ ของเรา

เริ่มจาก มาสเตอร์ ลบ TextView Widget ที่ fragment_main.xml ตัวนี่ไปก่อน

32

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง และ เพิ่ม TextView Widget เข้าไปใน Relative Layout ใหม่

Text

33

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

การกำหนด Text

มาสเตอร์ สร้าง String Resource โดยมี tag Name ว่า cow มี Value ว่า Cow

34

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

การกำหนด TextSize

35

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

กำหนด Style both

36

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

เพิ่ม ImageView

ไป Copy รูปไว้ก่อน

37

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

แล้วนําไป paste ไว้ที่ drawable-mdpi

38

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

39

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

40

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง กำหนดตําแหน่งที่ alignComponent

Create Panal ด้วย Linear Layout (Horizontal)

41

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

42

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง Button on Linear Layout

เพิ่มไปเลย 4 ปุ่ม

43

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง กำหนด Text ให้ Button

44

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

layout Weight ให้เป็น 1

Set up Wallpaper 45

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง ให้รีทัชภาพ ที่จะใช้เป็น Wallpaper ของแอพตามขนาดของจอ จากตัวอย่าง คือ 480x800 และ ต้องเป็น สกุล png ครับ

Copy ภาพที่ต้องการไว้ที่ drawable-mdpi

46

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

47

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ปรับสีโดยการใช้ textColor 48

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

49

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การสร้าง Scrolling

เริ่มจากการสร้าง LinearLayout ก่อน

และไว้ด้านล่างแบบนี้

ปรับ Layout-height สัก 110dp

50

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

Scrolling

51

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

เพิ่ม TextView เข้าไปใน Scrolling

มาสเตอร์ หา ชุดอักษรสําเร็จรูปจาก Lorem เข้าไปที่ http://www.lipsum.com ให้ ไปใส่ที่ TextView

52

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ทดสอบโค้ด บน Emulator

android Studio จะสร้าง ไฟร์ apk

53

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ให้รอจนการะบวนการจบ

เลือก Emulator ที่เปิดอยู่

54

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

55

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง มาโค้ดดิ้งแอนดรอยด์ กัน เริ่มจากการเปิด คลาส MainActivity

56

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง ทําความรูปจัก เมธอด ต่างๆ เมธอด onCreate

เป็น เมธอดหลักของ คลาส MainActivity คลาสใดๆ ที่ Extend Activity จะต้องมี เมธอดหลัก ที่ชื่อว่า onCreate

เมธอด onCreateOptionMeny เป็น เมธอด ที่ไว้ สร้างเมนู

เมธอด onCreateOptionItemSelected

เป็น เมธอด ที่ทําหน้าที่ในการ จัดการ สิ่งที่ได้จากการเลือกเมนู

57

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

คลาส PlaceholderFragment

มาถึงคลาส ตัวพระเองของเรา ตั่งแต่ android Studio เวอร์ชั่น 0.3.7 เป็นต้นไป การ Create Activity จะใช้ Fragment ทํางานตลอด โดยการสร้าง View ขึ้นมา ที่ เมธอด onCreateView

ประกาศตัวแปร เริ่มจากการ Declaration ตัวแปร ที่ใช้ควบคุม Widget ต่างๆ ก่อน

58

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

การ Initial Widget

การนําตัวแปรที่ประกาศ ไปเชื่อมต่อกับ Widget เรียกว่า การทำ Initial Widget แบบนี่

59

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

การ setOnClickListener

มาสเตอร์ เอา btnCOW ที่เป็นตัวแปร ของ Button มา setOnclickListener

กําหนด ให้เปลี่ยนภาพ, ชื่อหัวเรื่อง และ รายละเอียด ที่แสดงใน Scrolling แบบนี้ 60

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

setOnClickListener ที่ปุ่ม btnHORSE บ้าง และ ปุ่มอื่นๆ

ลองทดสอบโค้ด บน Emulator อีกครั้ง 61

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ลองคลิกที่ ปุ่มต่างๆ จะสังเกตุว่า ภาพ, หัวเรื่อง รวมไปถึงรายละเอียด จะเปลี่ยนไป

62

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การนําเสียง มาใช้ฎในแอพแอนดรอยด์ ต้องเป็นไฟร์ mp3 นะครับ

Create Android resource directory

63

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

แล้วเอาไฟร์เสียง ที่เรา Copy ไป Past ที่ raw

64

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง Create Method ที่สืบทอด MediaPlayer

และกําหนดให้กระทํา ที่เมธอด soundClick ทุกๆ ครั้งที่ กดปุ่ม

65

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

การทดสอบโค้ดแอนดรอยด์ บน เครื่องจริง

ให้เสียบเครื่องจริง (ตัวอย่างใช้ LG) ตอนที่ Choose Device จะมีให้เลือก แบบนี้

66

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

67

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

แอพแลกเปลี่ยนเงินตรา

เป็น Workshop ที่สอง ที่เราจะทํากัน MyExchangeMoney เป็น แอพแอนดรอยด์ ที่สอนให้เราเรียนรู้ การ Feed Data เขาทาง Edittext และ นำไปประมวลผล แล้ว แสดงผลที่ประมวลได้ ผ่าน AlertDialog

New Project MyExchangeMoney

68

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง และ Set Up ค่าตามนี่

มาสเตอร์ กําหนด ให้ คลาสแรก เป็น Splash Screen

69

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

มาสเตอร์ ลบ TextView Widget ตัวนี่ออกไปเลย

70

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง Splash Screen จะเป็น Activity ที่ แสดงภาพลักษณ์ ของ แอพ เรามักจะแสดง แค่ Logo ให้ ไป Copy Logo แล้ว paste ไปที่ drawable-mdpi

เพิ่ม ImageView เข้าไปที่ Relative Layout

71

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

กำหนด path เริ่มต้นที่ src

72

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ปรับ Wallpaper ให้ได้แบบนี้ Copy ภาพที่ต้องการ ไปไว้ที่ drawable-mdpi

73

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง เปลี่ยน Background เป็นไปตามที่ต้องการ

74

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การ Create Activity

75

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง แล้ว android Studio จะสร้าง Activity พร้อม xml ที่ใช้สําหรับการกําหนด Layout

กลับมาที่ คลาส SplashScreen

76

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง ที่คลาส Placeholderfragment

มาสเตอร์ ประกาศตัวแปร Hander ที่เป็น android.os

77

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง สร้าง RunAbleTheard

มาสเตอร์ สร้าง ระบบ การหน่วงเวลา postDelay เป็นเวลา 5 วินาที แล้ว ค่อย Intent ไปที่ MainActivity

มาสเตอร์ ทดสอบโค้ด ที่เขียนได้ กับ Emulator จะปรากฎหน้านี่ เป็นเวลา 5 วินาที แล้ว จะย้ายการทํางานไป MainActivity

78

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การใส่เสียงบน Splash Screen

มาสเตอร์ ทําเหมือนเดิม คือ เอาไฟร์เสียงไปเก็บไว้ที่ raw

79

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

80

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง Create Object MediaPlayer

ที่ เมธอด onCreateView มาสเตอร์ สร้าง Object ที่สืบทอดจาก MediaPlayer แบบนี่

81

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การใช้ เมธอด finish();

จากโค้ดที่ได้ เราลองกด ปุ่ม Undo ตัว Activity จะสามารถย้อนกลับ ไปที่ SplashScreen ได้ ให้เราใช้คําสั่ง Finish เพื่อ ปิดการทํางานของ SplashScreen เมื่อเรากอ Undo ที่ MainActivity จะปิดโปรแกรมไปเลย

82

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

กลับมาออกแบบ UI สําหร้บ fragment_main.xml เริ่มต้น จะเป็นแบบนี้

ออกแบบให้ได้แบบนี้ มาสเตอร์ จะไม่รีวิว ให้ละเอียด นะครับ เพราะ เคยทําได้ ตั่งแต่โปรเจ็ค MyAnimal แล้ว มาสเตอร์ จะเน้นไปที่ Widget ที่สําคัญๆ

83

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การกำหนด inputType ให้ editText

เราสามารถกําหนด ข้อมูล ที่จะเข้า editText โดยการไปกําหนด ที่ inputType โดย มาสเตอร์ ต้องการให้ User พิมพ์ ได้ เฉพาะ ตัวเลขที่มีจุดทดศนิยม ได้ โดยเลือก numberDecimal

84

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การกำหนด cheched ให้ RadioButton

เป็นเทคนิดในการกําหนด default ของการเลือก RadioButton โดยการ กําหนด ให้ checked ที่ RadioButton ที่เราต้องการ ให้เป็น Default และ กำหนด id ให้ Widget

เปิด คลาส MainActivty ออกมา โค้ด 85

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

Declaration ตัวแปร ที่ควบคุม Widget

86

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง Initial Widget กับ ตัวแปรที่ประกาศ

ในการรับค่าจาก editText ต้องแปลงชนิดของขัอมูลเป็น String โดย มาสเตอร์ ประกาศตัวแปร strMoney เพิ่ม

87

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง การหาช่องว่าง บน editText

บางครั้ง User หลงลืม กรอกจํานวนที่ editText ทําได้อย่างนี่

Android Device Monitor

คือ เดรื่องที่ใช้ ในการดู Service ต่างๆ ของ มือถือ หรือ Emulator

88

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง Logcat Message Fillter Setting

มาสเตอร์ จะ Filter Log มาดูเฉพาะ ที่เกี่ยวข้องกับ แอพของเรา

และลอง รันโค้ด ที่ได้บน Emulator ดู พร้อมเปิด DDMS มาสเตอร์ ลองไม่กรอง อะไร เลย คลิกปุ่ม

89

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง มาสเตอร์ ลองกรอก 12345 และ คลิกปุ่ม

Alert Dialog

มาสเตอร์ ทําแบบนี่นะครับ เมื่อไร ? ก็ตาม ที่มีช่องว่าง ให้ มี Dialog เตือน เริ่มจาก สร้าง คลาสเปล่าๆ ก่อน

90

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

Create New Class

มาสเตอร์ ตั่งชื่อ คลาส ตามนี่

ตัว android Studio ก็จะสร้าง คลาส ให้แบบนี้

91

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง มาสเตอร์ สร้าง เมธอด HaveSpaceDialog และ ประกาศตัวแปร AlertDialog.Builder

มาสเตอร์ ไป Copy Icon มาไว้ใน drawable-mdpi

92

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

กลับมาที่ คลาส PlaceholderFragment มาสเตอร์ ประกาศตัวแปร ที่สืบทอดมาจาก คลาส ที่เราสร้างขึ้น 93

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

ลองทดสอบโค้ด ที่ได้ บน Emulator 94

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

การใช้ RadioGroup และ RadioButton

มาสเตอร์ ประกาศตัวแปรเพิ่ม และ กําหนดค่าเริ่มต้นให้ แบบนี้

โดย มาสเตอร์ หา Factor ตัวคุณจาก

95

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

96

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

เป็นที่มาของ ค่าเริ่มต้นของตัวแปรต่อไปนี้

97

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

มาสเตอร์ เอา RadioGroup มา SetOnCheckedChangeListenter แบบนี้ และใช้ Switch Case มากําหนดเงื่อนไข ของการ เลือก RadioButton

มาสเตอร์ ใส่ Log เพื่อตรวจสอบการเลือก RadioButton 98

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

99

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

100

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง มาสเตอร์ ประการตัวแปร douAnswer และ strAnswer สําหรับเก็บคําตอบ ที่คํานวนได้

มาสเตอร์ สร้าง เมธอด calculateAnswer(); สําหรับ คํานวนคําตอบ

101

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง มาสเตอร์ ทดสอบโค้ด ที่ได้บน Emulator และ ดูผล LogCat บน DDMS โดย มาสเตอร์ ลองกรอง ค่าเงินบาท 1000

102

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

Create Method ShowAnswer

กลับไปที่ คลาส MyAlertDialog ให้เราสร้าง เมธอด ShowAnswer เพื่อ รับค่า มาแสดงบน AlertDialog

103

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง กลับมาที่ คลาส PlaceholderFragmen ที่ เมธอด onCreateView

ทดสอบโค้ดที่ได้บน Emulator

104

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

105

http://androidthai.in.th


อบรมแอนดรอยด์ กับ มาสเตอร์ อึ่ง

http://androidthai.in.th https://www.facebook.com/android.Training.by.EWTC Hot Line 081-859-5309

106

http://androidthai.in.th


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.