±âº» ÇÁ·Î±×·¥ Á¦ÀÛ

 Visual Studio 2015¸¦ ½ÇÇàÇÏ¿© File ¸Þ´ºÀÇ ºÎ¸Þ´º NewÀÇ Project¸¦ ¼±ÅÃÇÏ¸é ´ÙÀ½°ú °°ÀÌ È­¸é¿¡ ³ªÅ¸³­´Ù.

<±×¸² 1>

  ÁÂÃø Tree¿¡¼­ Android¸¦ ¼±ÅÃÇϰí Áß¾Ó ¸®½ºÆ®¿¡¼­ Blank App(Android)¸¦ ¼±ÅÃÇÑÈÄ Name¿¡ MakeProgramÀ» ÀÔ·ÂÇÑ ÈÄ OK¸¦ ¼±ÅÃÇÏ¸é ´ÙÀ½°ú °°ÀÌ MakeProgramÀ̶ó´Â ÇÁ·ÎÁ§Æ®°¡ »ý¼ºµÈ´Ù.

<±×¸² 2>

 ±âº»ÀûÀ¸·Î »ý¼ºµÈ ÇÁ·ÎÁ§Æ®¸¦ ½ÇÇàÇÏ¸é ±î¸¸»ö È­¸éÀÌ ³ªÅ¸³ªµµ·Ï µÇ¾î ÀÖ´Ù.

  À̸¦ ¼öÁ¤ÇÏ¿© ´ÙÀ½°ú °°Àº È­¸éÀ» ¸¸µé¾î º¸µµ·Ï ÇϰڴÙ.

   

  È­¸é µðÀÚÀÎÀ» ÇϱâÀü¿¡ À̹ÌÁö¸¦ ¸ÕÀú ³Ö¾î º¸°Ú´Ù.

 ÇÁ·ÎÁ§Æ® µð·ºÅ丮(<±×¸² 1>ÀÇ Location¿¡ ÀÔ·ÂÇÑ ÆúÅÍ + Name¿¡ ÀÔ·ÂÇÑ Æú´õ(¿©±â¼­´Â D:\User\jys\Xamarine\Education\MakeProgram))ÀÇ \Resources\drawable¿¡ È­¸é¿¡ ³ÖÀ» À̹ÌÁö¸¦ º¹»çÇÏ¿© ³Ö½À´Ï´Ù(ÇÊÀÚ´Â BusStop.png¸¦ º¹»çÇÏ¿© ³Ö¾úÀ¸¸ç ÇØ´ç À̹ÌÁö´Â ¿©±â¸¦ Ŭ¸¯ÇÏ¸é ´Ù¿î¹ÞÀ» ¼ö ÀÖ´Ù).

  À§ ±×¸²°ú °°ÀÌ ¿ÞÂÊ TreeÀÇ drawable¿¡¼­ ¸¶¿ì½º ¿ÞÂÊ ¹öưÀ» ¼±ÅÃÇÏ¿© »ý¼ºµÈ ¸Þ´º¿¡¼­ AddÀÇ ºÎ¸Þ´º Existing ItemÀ» ¼±ÅÃÇÏ¸é ´ÙÀ½°ú °°Àº ´ëÈ­ »óÀÚ°¡ »ý¼ºµÈ´Ù.

   BusStop.png¸¦ ¼±ÅÃÇϰí Add¸¦ ¼±ÅÃÇϸé drawable¾Æ·¡ BusStopÀÌ Ãß°¡µÈ´Ù.

   <±×¸² 2> ¿ÞÂÊ TreeÀÇ layout¾Æ·¡ Main.axmlÆÄÀÏÀ» ´õºíŬ¸¯ÇÏ¸é ´ÙÀ½°ú °°ÀÌ µðÀÚÀÎÇÒ ¼ö ÀÖ´Â È­¸éÀÌ ³ªÅ¸³­´Ù.

   

   ToolboxÀÇ ImageView¸¦ ¸¶¿ì½º·Î Ŭ¸¯ÇÏ¿© È­¸é¿¡ µå·¹±×ÇÏ¿© ³õÀ¸¸é ´ÙÀ½°ú °°ÀÌ ImageView°¡ È­¸é¿¡ Ãß°¡µÈ´Ù.

   

   Ãß°¡µÈ ImageView¸¦ Ŭ¸¯Çϰí PropertiesÀÇ srcÀÇ ¹öưÀ» ¼±ÅÃÇÏ¸é ´ÙÀ½°ú °°ÀÌ È­¸é¿¡ ³ªÅ¸³­´Ù.

   ¾Õ¿¡¼­ Ãß°¡ÇÑ À̹ÌÁö busstopÀ» ¼±ÅÃÇÑ ÈÄ Ok¸¦ ¼±ÅÃÇϸé È­¸éÀº ´ÙÀ½°ú °°ÀÌ ¹Ù²ï´Ù.

   

   º¯°æµÈ ImageView¸¦ ¼±ÅÃÇÏ¿© ÇÏ´Ü¿¡ »ý±ä µ¿±×¶ó¹Ì Á¡¿¡ ¸¶¿ì½º¸¦ ¿Ã¸®¸é Ä¿½º°¡ À§¾Æ·¡ È­»ìÇ¥·Î ¹Ù²ï´Ù. ±× »óÅ¿¡¼­ ¸¶¿ì½º¸¦ Ŭ¸¯ÇÏ¿© À§ÂÊÀ¸·Î ¿Ã·Á¼­ À̹ÌÁö Å©±â ¸¸Å­ ImageView¸¦ ÁÙÀδÙ.

   

   Toolbox¿¡¼­ Text (Medium)¸¦  ¸¶¿ì½º·Î Ŭ¸¯ÇÏ¿© È­¸é¿¡ µå·¹±×ÇÏ¿© ³õÀ¸¸é ´ÙÀ½°ú °°ÀÌ Text°¡ È­¸é¿¡ Ãß°¡µÈ´Ù.

   

   PropertiesÀÇ id¸¦ textView1¿¡¼­ textViewDistance·Î ¼öÁ¤Çϰí, ½ºÅ©·ÑÀ» ³»·Á textÀÇ Medium Text¸¦ »èÁ¦ÇÑ´Ù. ÀÌ Text´Â ÇâÈÄ ³²Àº °Å¸®¸¦ Ç¥½ÃÇϱâ À§ÇØ Ãß°¡ÇÑ °ÍÀ̸ç ÇÁ·Î±×·¥¿¡¼­ ±¸ºÐÇÏ¿© »ç¿ëÇϱâ À§ÇØ textViewDistance·Î ¼öÁ¤ÇÑ °ÍÀÌ´Ù.

    Toolbox¿¡¼­ ButtonÀ» ¸¶¿ì½º·Î Ŭ¸¯ÇÏ¿© È­¸é¿¡ µå·¹±×ÇÏ¿© ³õÀº ÈÄ, PropertiesÀÇ id¸¦ buttonDestinationÀ¸·Î ¼öÁ¤Çϰí text¿¡ ¸ñÀûÁö ¼³Á¤À» ÀÔ·ÂÇÑ´Ù.

    Toolbox¿¡¼­ ButtonÀ» ¸¶¿ì½º·Î Ŭ¸¯ÇÏ¿© È­¸é¿¡ µå·¹±×ÇÏ¿© ³õÀº ÈÄ, PropertiesÀÇ id¸¦ buttonEnvironÀ¸·Î ¼öÁ¤Çϰí text¿¡ ȯ°æ ¼³Á¤À» ÀÔ·ÂÇÑ´Ù.

   ´ÙÀ½Àº µðÀÚÀÎÀ» ¿Ï¼ºÇÑ ¸ð¾çÀÌ´Ù.

   ÀÌÁ¦ ¼Ò½º¸¦ ÆíÁýÇØº¸µµ·Ï ÇϰڴÙ.

   ¿¬µ¿Àº °£´ÜÈ÷ ŸÀÌÆ²À» µµÂø¾Ë¸²ÀÌ·Î ¼öÁ¤Çϰí, ¸ñÀûÁö ¼³Á¤À» ¼±ÅÃÇÏ¸é ¸ñÀûÁö ¼³Á¤À̶ó´Â ¾Ë¸²ÀÌ ¶ß°í, ȯ°æ ¼³Á¤À» Ŭ¸¯Çϸé ȯ°æ ¼³Á¤À̶ó´Â ¾Ë¸²ÀÌ ¶ßµµ·Ï ¼öÁ¤ÇÑ´Ù.

   

   ¸ÕÀú ŸÀÌÆ²Àº MainActivity class ¼±¾ð ¹Ù·ÎÀ§ÀÇ "MakeProgram"À» "µµÂø ¾Ë¸²ÀÌ"·Î ¼öÁ¤ÇÏ¸é µÈ´Ù.

  ¾Æ·¡ÂÊÀ» º¸¸é MyButton¿¡ »¡°£»ö ÁÙÀÌ ÃÄÁ® ÀÖ´Â °ÍÀ» ¾Ë¼ö ÀÖ´Ù. À̰ÍÀº ¾Õ¿¡¼­ HELLOW WORLD. CLICK ME!¸¦ »èÁ¦Ç߱⠶§¹®¿¡ Error°¡ ³µ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù.

   µÎÁÙÀ» ¾Æ·¡¿Í °°ÀÌ ¼öÁ¤ÇÑ´Ù.   

            Button button = FindViewById<Button>(Resource.Id.buttonDestination);
            button.Click += delegate { OnClickDestination(); };

  buttonDestinationÀº ¸ñÀûÁö ¼³Á¤ ¹öưÀ» Ãß°¡ÇÑ ÈÄ Properties¿¡ ¼³Á¤ÇÑ idÀÌ¸ç ±× ¹öưÀ» Ŭ¸¯ÇßÀ» ¶§ ½ÇÇàµÇ´Â ÇÔ¼ö¸¦ OnClickDestination()À» »ç¿ëÇÒ ¼ö ÀÖµµ·Ï È£ÃâÇÑ °ÍÀÌ´Ù.

   ¹°·Ð ¾Æ·¡¿Í °°ÀÌ ÇÔ¼ö¸¦ ¼±¾ðÇÏ¿© ¼öÇàÇϰíÀÚ ÇÏ´Â ±â´ÉÀ» ±¸ÇöÇϸéµÈ´Ù.

        void OnButtonDestination()
        {
            Toast.MakeText(this, "¸ñÀûÁö ¼³Á¤", ToastLength.Short).Show();
        }

   Toast´Â ¸Þ½ÃÁö Ç¥Çö¹æ½ÄÀÇ Çϳª·Î ¸¹ÀÌ »ç¿ëÇÏ´Â ±â´ÉÀÌ´Ù.

   È¯°æ ¼³Á¤µµ °°Àº ¹æ½ÄÀ¸·Î ¼öÁ¤ÇÏ¸é µÈ´Ù.

   ¾Æ·¡´Â ¼öÁ¤¿Ï·áÇÑ ¼Ò½º È­¸éÀÌ´Ù.

  ÀÌÁ¦ F5¸¦ ´­·¯º¸ÀÚ F5´Â Debug ¸Þ´ºÀÇ Start Debug¸¦ ½ÇÇàÇÏ´Â °ÍÀ¸·Î ¾Û ¼³Ä¡ ÆÄÀÏÀÎ .apkÆÄÀÏÀ» ¸¸µé°í µð¹ÙÀ̽º¿¡ ¹èÆ÷ÇÏ°í ¼³Ä¡ÇÑ ÈÄ ½ÇÇàÇÏ¿© µð¹ö±ëÀ» ÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â ±â´ÉÀ» ¼öÇàÇÑ´Ù.

  ½º¸¶Æ®ÆùÀ» ¿¬°áÇÏÁö ¾Ê°í µð¹ö±ëÀ» ÇßÀ¸¹Ç·Î ¿¡¹Ä·¹ÀÌÅͰ¡ µ¿ÀÛÇÏ¿© µð¹ö±ëÀ» ¼öÇàÇÑ´Ù.

 ¿¹Àü¿¡´Â ¿¡¹Ä·¹ÀÌÅͰ¡ ¼Óµµµµ ´À¸®°í ºÒ¾ÈÇßÀ¸³ª ÀÌÁ¦ ¸¹ÀÌ ÁÁ¾ÆÁø µíÇÏ´Ù(¿¹Àü¿¡´Â ÇÊÀÚµµ Áö´Ï¸ð¼ÇÀ̶ó´Â ¿¡¹Ä·¹ÀÌÅ͸¦ Ãß°¡·Î ¼³Ä¡Çؼ­ »ç¿ëÇßÀ¸³ª ±×·²Çʿ䰡 ¾øÀ» µí ÇÏ´Ù).

 ¿¡¹Ä·¹ÀÌÅÍ´Â Visual Studio È­¸é »ó´Ü Áß¾ÓÀÇ ÄÞº¸¹Ú½º¿¡¼­ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù. ±âº» ¼³Á¤Àº Android_ARMv7a (Android 6.0 - API 23)À¸·Î ¼±ÅõǾî ÀÖÀ¸³ª Android_Accelerated_x86 (Android 6.0 API 23)·Î ¼³Á¤À» º¯°æÇÏ¿© ½ÇÇàÇÏ´Â °ÍÀÌ ¾à 10¹è Á¤µµ ºü¸£´Ù°í ÇÑ´Ù.

 Ã³À½ ¼³Ä¡ÇÏ¸é ¿¡¹Ä·¹ÀÌÅÍ ¼±Åà ÄÞº¸¹Ú½º°¡ ³ªÅ¸³ªÁö ¾Ê´Â´Ù(Android ÇÁ·ÎÁ§Æ®°¡ ¾Æ´Ñ °æ¿ì¿¡´Â ³ªÅ¸³ªÁö ¾Ê´Â °ÍÀÌ Á¤»óÀÌ´Ù).

  ÀÌ·² °æ¿ì Tools¸Þ´ºÀÇ ºÎ¸Þ´º AndroidÀÇ Android SDK Manager¸¦ ¼±ÅÃÇÏ¸é ´ÙÀ½°ú °°Àº ´ëÈ­ »óÀÚ°¡ »ý¼ºµÈ´Ù.

   

 Intel x86 Atom System Image°¡ ¼³Ä¡µÇÁö ¾Ê¾Ò´Ù¸é üũÇÏ¿© Install packages¸¦ ¼±ÅÃÇÏ¿© ¼³Ä¡ÇÑ´Ù(°¡´ÉÇϸé Install packages°¡ Ȱ¼ºÈ­µÇÁö ¾ÊÀ» ¶§±îÁö Update¸¦ ¸ðµÎ ¼öÇàÇÏ´Â °ÍÀÌ ÁÁ´Ù).

 Tools¸Þ´ºÀÇ ºÎ¸Þ´º AndroidÀÇ Android Emulator Manager¸¦ ¼±ÅÃÇÏ¸é ´ÙÀ½°ú °°Àº ´ëÈ­ »óÀÚ°¡ »ý¼ºµÈ´Ù.

  Android_Accelerated_x86À» ¼±ÅÃÇϰí Edit¸¦ ¼±ÅÃÇÏ¸é ´ÙÀ½°ú °°ÀÌ È­¸é¿¡ ³ªÅ¸³­´Ù.

  ResolutionÀÇ ¼¼·ÎÅ©±â¸¦ 1280¿¡¼­ 1380À¸·Î ¼öÁ¤ÇØ ÁØÈÄ Edit AVD¸¦ ¼±ÅÃÇÑ´Ù(ÀÌ ºÎºÐÀº ÇâÈÄ ¿¡¹Ä·¹ÀÌÅ͸¦ µ¹·Á ÇÁ·Î±×·¥À» ½ÇÇàÇßÀ» ¶§ ÇÏ´ÜÀÇ ÀϺΰ¡ Àß·Á¼­ ³ªÅ¸³ª´Â ¹®Á¦°¡ Àִµ¥ À̸¦ ÇØ°áÇϱâ À§ÇØ ¼³Á¤ÇѰÍÀÌ´Ù).

  Start¸¦ ´­·¯ Çѹø ½ÇÇàÇÏ¸é ¿¡¹Ä·¹ÀÌÅÍ ¼±Åà ÄÞº¸¹Ú½º°¡ ³ªÅ¸³­´Ù.

 ´ÙÀ½°ú °°Àº ´ëÈ­ »óÀÚ°¡ ³ªÅ¸³ª¸ç ½ÇÇàÀÌ ¾ÈµÇ´Â °æ¿ì°¡ ÀÖ´Ù.

  ÀÌ ¿¡·¯´Â ¿¡¹Ä·¹ÀÌÅ͸¦ Çϵå¿þ¾î °¡¼ÓÀ» »ç¿ëÇÑ´Ù°í ¼³Ä¡½Ã üũÇ߱⠶§¹®¿¡ ¹ß»ýÇÏ´Â °ÍÀÌ´Ù.

  À̸¦ ÇØ°áÇϱâ À§ÇØ ¸ÕÀú ÄÄÇ»Å͸¦ ÀçºÎÆÃÇÏ¿© ·Ò¹ÙÀÌ¿À½º ¼³Á¤¿¡¼­ Virtualization Technology¸¦ Enabled·Î ¼³Á¤ÇØ¾ß ÇÑ´Ù.

  ÄÄÇ»ÅÍ ¸¶´Ù µé¾î°¡´Â ¹æ¹ý°ú È­¸é ¸ð¾çÀÌ ´Ù¸£¸ç ºñ½ÁÇÑ Ç׸ñ(ÇѱÛÀÎ °æ¿ì °¡»óÈ­)À» ã¾Æ ¼³Á¤ÇÏ¸é µÈ´Ù.

  ´ÙÀ½À¸·Î ¿©±â¸¦ Ŭ¸¯ÇÏ¿© haxm-windows_v6_0_4.zip ÆÄÀÏÀ» ´Ù¿î¹Þ¾Æ ¾ÐÃàÀ» Ç®°í ¼³Ä¡¸¦ ÇÏ¸é µÈ´Ù.

  ¾Æ·¡´Â ¿¡¹Ä·¹ÀÌÅÍ¿¡¼­ ½ÇÇàµÈ ¸ð¾çÀÌ´Ù.

 

´Ù¿î·Îµå