Android Notepad Tutorial ÇÑ±Û ¹®¼­[Àڹٸ𵨸µ]

¿µ¹®À¸·Î µÇ¾î ÀÖ´Â Android ÀÇ Notepad Tutorial À» ÇÑ±Û ¹®¼­·Î º¯È¯ÇÏ¿© °³¹ßÀÚµéÀÌ ¼Õ½±°Ô Android Application À» ÀÛ¼ºÇϴµ¥ ½±°Ô ÀÌÇØÇÒ ¼ö ÀÖµµ·Ï ÀÛ¼ºÇÑ´Ù.
¿µ¹®À¸·Î µÈ ³»¿ëÀ» ±â¹ÝÀ¸·Î ´Ü°èº°·Î ÀÛ¼ºÀ» ÇØ ³ª°¥°ÍÀÌ´Ù.

0. Preparing for the Exercise

ÀÌ Notepad ¸¦ ÀÛ¼ºÇϱâ À§Çؼ­ Eclipse ¸¦ »ç¿ëÇÒ °ÍÀ̸ç, ±âº»ÀûÀ¸·Î Android ¸¦ °³¹ßÇϱâ À§ÇÑ È¯°æ¼³Á¤ÀÌ µÇ¾î ÀÖ´Ù´Â °¡Á¤ÇÏ¿¡ ÀÌ ¿¹Á¦¸¦ ÀÛ¼ºÇÑ´Ù.

ÀÌ Notepad ¸¦ À§Çؼ­ ±âº»ÀûÀÎ ¼³Á¤ÆÄÀÏ°ú Ŭ·¡½º¸¦ Á¦°øÇÏ°í ÀÖ´Ù. ¾Æ·¡ÀÇ ÀýÂ÷´ë·Î ÁøÇàÇÏ¸é µÈ´Ù.

  • ¾ÐÃàµÈ ÆÄÀÏ(zip)À» ´Ù¿î·Îµå ÇÑ´Ù. Project exercises archive(.zip)
  • ´Ù¿î·ÎµåÇÑ ÆÄÀÏÀ» ÀûÀýÇÑ µð·ºÅ丮¿¡ ¾ÐÃàÀ» Ǭ´Ù.
  • NotepadCodeLab µð·ºÅ丮¸¦ »ìÆ캻´Ù.

2. Notepad Exercise 2

À̹ø ¹®¼­¿¡¼­´Â note ¸¦ »ý¼ºÇÏ°í ¼öÁ¤Çϱâ À§Çؼ­ º°µµÀÇ Activity ¸¦ Ãß°¡ÇÒ °ÍÀÌ´Ù. ¶ÇÇÑ note ¸¦ »èÁ¦Çϵµ·Ï ÇÒ °ÍÀÌ´Ù.

  • »õ·Î¿î Activity ¸¦ »ý¼ºÇÏ°í, AndroidManifest.xml ¿¡ Ãß°¡ÇÏ´Â ¹æ¹ý
  • startActivityForResult() ¸¦ »ç¿ëÇÏ¿© ºñµ¿±â·Î ´Ù¸¥ Activity ¸¦ È£ÃâÇÏ´Â ¹æ¹ý
  • °´Ã¼¸¦ Activity »çÀÌ¿¡ ¼­·Î Àü¼ÛÇϱâ
  • Á» ´õ º¹ÀâÇÑ ½ºÅ©¸° layout »ç¿ë ¹æ¹ý, context ¸Þ´º »ý¼ºÇÏ´Â ¹æ¹ý

2.1 Step 1

Notepad ÀÇ ¾îÇø®ÄÉÀ̼ÇÀ» °³¹ßÇϱâ À§ÇÑ ±âº» ȯ°æ¼³Á¤°ú Äڵ带 Æ÷ÇÔÇÏ°í ÀÖ´Â ¼Ò½º¸¦ ´Ù¿î·Îµå ¹Þ´Â´Ù.(À§ÀÇ ³»¿ë Âü°í)

File -> New -> Android Project ¸¦ ¼±ÅÃÇÏ°í, Create project from existing source ¸¦ ¼±ÅÃÇÑ´Ù.

±×¸®°í Locationn ¿¡¼­ Browse ¹öÆ°À» Ŭ¸¯ÇÏ¿©, ´Ù¿î·ÎµåÇؼ­ ¾ÐÃàÀ» Ǭ µð·ºÅ丮¿¡¼­ Notepadv2 µð·ºÅ丮¸¦ ¼±ÅÃÇÑ´Ù. ±×·¯¸é ÀÚµ¿À¸·Î Project name ÀÌ ÀÔ·ÂÀÌ µÈ´Ù.

Build Target Àº ¼³Á¤µÈ AVD Áß¿¡¼­ ÀûÀýÇÑ °ÍÀ» ¼±ÅÃÇÑ´Ù. Application Name °ú Package name Àº ÀÚµ¿À¸·Î ÀÔ·ÂÀÌ µÇ¸ç, Min SDK Version ¿¡ ¼±ÅÃµÈ Build Target ¿¡ ¸Â°Ô ¹öÀü ¹øÈ£¸¦ ÀÔ·ÂÇÑ´Ù.

 

±×¸®°í Finish ¹öÆ°À» Ŭ¸¯Çϸé ÇÁ·ÎÁ§Æ®°¡ »ý¼ºÀÌ µÈ´Ù.

2.2 Step 2

»ç¿ëÀÚ°¡ °¢°¢ÀÇ note ¸¦ »èÁ¦ÇÒ ¼ö ÀÖµµ·Ï context menu ¸¦ »ý¼ºÇÑ´Ù.

ListView ¿¡ ÀÖ´Â °¢°¢ÀÇ ¸ñ·ÏÀ» context menu ¿¡ µî·ÏÇϱâ À§Çؼ­ registerForContextMenu() ¸Þ¼Òµå¸¦ onCreate() ¸Þ¼Òµå¿¡ Ãß°¡ÇÏ¿© È£ÃâÇÑ´Ù.

 

±×¸®°í conCreateContextMenu() ¸Þ¼Òµå¸¦ ¾Æ·¡¿Í °°ÀÌ ±¸ÇöÇÑ´Ù. ContextMenu ¿¡ Delete ¸Þ´º¸¦ Ãß°¡ÇÏ´Â ÄÚµå

 

2.3 Step 3

Context Menu ¸¦ µî·ÏÇ߱⿡, menu °¡ Ŭ¸¯µÇ¾úÀ»¶§ µ¿ÀÛÇϱâ À§ÇÑ Äڵ带 ±¸Çö

onContextItemSelected() ¸¦ ¾Æ·¡¿Í °°ÀÌ ±¸Çö

 

2.4 Step 4

createNote() ¸Þ¼Òµå ±¸Çö

Note ¸¦ »õ·Î ¸¸µé±â À§Çؼ­ º°µµÀÇ NoteEdit Ŭ·¡½º¸¦ »ç¿ëÇϱâ À§ÇÑ Intent ¸¦ »ý¼º. startActivityForResult() ¸¦ Intent ·Î È£Ãâ

 

2.5 Step 5

onListItemClick() ¸Þ¼Òµå ±¸Çö

Ç׸ñÀÌ Å¬¸¯µÇ¾úÀ» ¶§, Ŭ¸¯µÈ Ç׸ñÀÇ note °ªÀ» ¼³Á¤Çؼ­ ´Ù¸¥ Activity(NoteEdit) À¸·Î º¸³½´Ù.

Intent.putExtra() ¸¦ »ç¿ëÇÏ¿©, id, title, body °ªÀ» Àü¼ÛÇÑ´Ù.

2.6 Step 6

onActivityResult() ¸Þ¼Òµå ±¸Çö

createNote() ¿Í onListItemClick() ¿¡¼­ ºñµ¿±â·Î ´Ù¸¥ Activity ¸¦ È£ÃâÇß´Ù. È£ÃâÇÏ°í ³­ ÈÄ¿¡ ó¸®Çϱâ À§ÇÑ ±â´ÉÀ» onActivityResult() ¸Þ¼Òµå¿¡¼­ Á¤ÀÇÇÑ´Ù.

2.7 Step 7

note_edit.xml ÆÄÀÏÀº NoteEdit Ŭ·¡½º¿¡¼­ note ¸¦ ÀÛ¼ºÇÒ ¶§ »ç¿ëµÇ´Â layout ÀÌ´Ù.

 

 

2.8 Step 8

NoteEdit Ŭ·¡½º »ý¼º

File -> New -> Class ¸Þ´º¸¦ ¼±ÅÃ, android.app.Activity ¸¦ »ó¼Ó¹Þ´Â NoteEdit Ŭ·¡½º »ý¼º.

 

2.9 Step 9

onCreate() ¸Þ¼Òµå ±¸Çö.

¾Æ·¡¿Í °°ÀÌ ±¸ÇöÇÑ´Ù.

 

2.10 Step 10

onClick() ¸Þ¼Òµå ±¸Çö

»ç¿ëÀÚ°¡ confirm ¹öÆ°À» Ŭ¸¯ÇßÀ» ¶§ ó¸®Çϱâ À§ÇÑ ±â´É. »õ·Î¿î note ¸¦ ÀÛ¼ºÇÏ°í, ±× ³»¿ëÀ» Notepadv2 Ŭ·¡½º·Î Àü¼ÛÇϱâ À§ÇÑ ³»¿ë

 

2.11 Step 11

NoteEdit Ŭ·¡½º¸¦ AndroidManifest.xml ÆÄÀÏ¿¡ µî·Ï

Android ¿¡¼­ »õ·Î µî·ÏµÈ Activity ¿¡ ´ëÇؼ­ ¾Ë±â À§Çؼ­, ¹Ýµå½Ã AndroidManifest.xml ÆÄÀÏ¿¡ µî·ÏÀ» ÇØ¾ß ÇÔ

Application tab À» ¼±ÅÃ, Add ¹öÆ° Ŭ¸¯ÇÏ°í, Activity ¼±ÅÃ, Name : NoteEdit ¼±ÅÃ

 

2.12 Step 12

Notepadv2 ÇÁ·ÎÁ§Æ®¸¦ ¼±ÅÃÇÏ°í, ¿À¸¥ÂÊ ¸¶¿ì½º Ŭ¸¯ÇÑ ´ÙÀ½, Run As -> Android Application À» ¼±ÅÃÇÏ¿© ½ÇÇàÇÑ´Ù.