Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
µÚ¶þ¸öiPhoneÓ¦ÓóÌÐò£º¡°Say Hello¡±
 
×÷Õߣºspring0924 À´Ô´£º²©¿ÍÔ° ·¢²¼ÓÚ 2015-01-22
  2560  次浏览      30
 

ÏîÄ¿ÐèÇó

дһ¸öiPhoneÓ¦ÓóÌÐò£¬ÒªÇó¿ÉÒÔÊäÈëÃû×Ö£¬µã»÷°´Å¥ºó£¬»áÏÔʾһ¶ÎÎÄ×ÖÏòÊäÈëµÄÃû×Ö´òÕкô£¬ÀýÈçÊäÈë¡°±¦Óñ¡±£¬ÏÔʾ¡°ÄãºÃ£¬±¦Óñ!¡±

ÐèÇó·ÖÎö

ÕâÊÇÒ»¸öºÜ¼òµ¥µÄÓ¦ÓóÌÐò£¬°üº¬Ò»¸öÎı¾ÊäÈë¿ò£¬Ò»¸öÎı¾ÏÔʾ¿ò£¬Ò»¸ö°´Å¥¡£ÊäÈëÃû×Öµ½Îı¾ÊäÈë¿ò£¬ÔÙµã»÷°´Å¥£¬ÕâʱÎı¾ÏÔʾ¿òµÄÎÄ×־ͻá±ä³É¡°ÄãºÃ£¬<Ãû×Ö>!¡±¡£µ«ÊÇҪעÒ⣬Èç¹ûÓû§ÊäÈëΪ¿Õ£¬ÒªÓо¯¸æÌáʾÓû§ÖØÐÂÊäÈ룻Èç¹ûÓû§ÊäÈëÎÄ×ÖÌ«³¤£¬³¬¹ý16¸ö×Ö·û£¬Òª×Ô¶¯½Ø¶Ï¡£

²úÆ·Éè¼Æ

¸ù¾ÝÏîÄ¿ÐèÇ󣬻­³öÏàÓ¦µÄ²úÆ·Ô­ÐÍͼ£º

³õʼ״̬

³õʼʱ£¬Îı¾ÊäÈë¿òΪ¿Õ£¬µ«ÊÇÏÔʾˮӡ£¬ÌáÐÑÓû§¿ÉÒÔÊäÈëÐÕÃû¡£Îı¾ÏÔʾ¿òÎÄ×ÖΪ¿Õ¡£

ÊäÈëÃû×Ö²¢µã»÷°´Å¥ºó

ÊäÈëÃû×Ö£¬²¢µã»÷°´Å¥ºó£¬ÆÁÄ»ÖмäÏÔʾÎÄ×Ö£º¡°ÄúºÃ£¬<Ãû×Ö>!¡±¡£

ûÓÐÊäÈëÃû×ֵľ¯¸æÌáʾ

Èç¹ûûÓÐÊäÈëÃû×Ö£¬µã»÷°´Å¥ºóµ¯³ö¾¯¸æ´°¿Ú£¬ÌáÐÑÓû§ÊäÈëÃû×Ö¡£

ϵͳ·ÖÎö

ÕâÊÇÒ»¸ö·Ç³£¼òµ¥µÄÓ¦ÓóÌÐò£¬ÊµÏÖ˼·²»²»Ë㸴ÔÓ£º

1.Ò»¸öÎı¾ÊäÈë¿ò£¬ÓÃÀ´ÊäÈëÎÄ×Ö£¬ÐèÒªÏÞÖÆ×î´ó×Ö·û³¤¶ÈΪ16¸ö×Ö·û£¬ÊäÈë¿òûÓÐÄÚÈÝʱ£¬ÏÔʾˮӡÎÄ×Ö¡£UITextField¿Ø¼þÕýºÃ¿ÉÒÔÂú×ãÐèÇó¡£

2.Ò»¸öÎı¾ÏÔʾ¿ò£¬ÓÃÀ´ÏÔʾ×îÖÕÉú³ÉµÄÎÄ×Ö¡£Ê¹ÓÃUILabel¿Ø¼þ¼´¿ÉÂú×ãÐèÇó¡£

3.Ò»¸ö°´Å¥£¬µã»÷ºó£¬»ñÈ¡Îı¾ÊäÈë¿òÎÄ×ÖÄÚÈÝ£¬Éú³É¡°ÄãºÃ£¬<Ãû×Ö>!¡±ÎÄ×Ö£¬²¢ÏÔʾÔÚÎı¾ÏÔʾ¿òÖС£Èç¹ûµã»÷ʱÎı¾ÊäÈë¿òÎÄ×ÖΪ¿Õ£¬µ¯³ö¾¯¸æÌáʾ¿ò¡£

ͬʱ£¬Õâ¸öÓ¦ÓóÌÐòÔÚ¿ª·¢¹ý³ÌÖУ¬ÐèÒªÓ¦Óõ½iPhone¿ª·¢ÖÐһЩ³£ÓõÄÉè¼ÆÄ£Ê½£º

1.ίÍÐ(Delegate)

2.Ä£ÐÍ ÊÓͼ ¿ØÖÆÆ÷(MVC)

3.Ä¿±ê - ¶¯×÷(Target-Action)

ίÍÐ(Delegate)

ίÍÐģʽÊÇÒ»¸ö¶ÔÏóÖÜÆÚÐÔµØÏò±»Ö¸¶¨ÎªÆäίÍеÄÁíÒ»¸ö¶ÔÏó·¢ËÍÏûÏ¢£¬ÏòÆäÇëÇóÊäÈë»òÕß֪ͨij¼þÊÂÇéÕýÔÚ·¢Éú¡£¸Ãģʽ¿ÉÌæ»»Àà¼Ì³ÐÀ´¶Ô¿É¸´ÓöÔÏóµÄ¹¦ÄܽøÐÐÀ©Õ¹¡£

ÔÚ±¾ÏîÄ¿ÖУ¬Ó¦ÓóÌÐò¶ÔÏó»áÏòÆäίÍз¢ËÍÏûÏ¢£¬Í¨ÖªËüÖ÷ÒªµÄÆô¶¯Àý³ÌÒѾ­Íê³É²¢ÇÒ¶¨ÖƵÄÅäÖÿɿªÊ¼Ö´ÐС£ÎªÁ˽¨Á¢²¢¹ÜÀíÊÓͼ£¬Î¯Íлᴴ½¨Ò»¸ö¿ØÖÆÆ÷ʵÀý¡£ÁíÍ⣬µ±Óû§µã»÷Return°´¼üºó£¬Îı¾×Ö¶ÎÒ²»á֪ͨËüµÄίÍУ¨¼´Ëù´´½¨µÄ¿ØÖÆÆ÷¶ÔÏó£©

ίÍз½·¨Í¨³£»á¼¯ÖÐÔÚÒ»ÆðÐγÉÒ»·ÝЭÒé¡£ Ò»·ÝЭÒé»ù±¾ÉϾÍÊÇÒ»¸ö·½·¨µÄÁÐ±í¡£Èç¹ûÒ»¸öÀà×ñѭij¸öЭÒ飬ÔòËüÒª±£Ö¤ÊµÏÖЭÒéËùÒªÇóµÄ·½·¨£¨ÓÐЩ·½·¨¿ÉÑ¡ÔñʵÏÖÓë·ñ£©¡£Î¯ÍÐЭÒ鹿¶¨ÁËÒ»¸ö¶ÔÏó¿ÉÒÔ·¢Ë͸øÎ¯ÍеÄËùÓÐÏûÏ¢¡£ÀýÈç³£¼ûµÄÓУºUITextFieldDelegate, UIApplicationDelegate, UIScrollViewDelegate, UITableViewDelegate, UIWebViewDelegate¡£

Ä£ÐÍ ÊÓͼ ¿ØÖÆÆ÷(MVC)

MVCģʽ½«Ó¦ÓóÌÐòÖеĶÔÏóÉ趨ΪÈýÖÖ½ÇÉ«£ºÄ£ÐͽÇÉ«£¨Model£©¡¢ÊÓͼ½ÇÉ«£¨View£©ºÍ¿ØÖÆÆ÷½ÇÉ«£¨Controller£©¡£

Ä£ÐͶÔÏó(Model)±íʾÊý¾Ý¡£ÀýÈ磬ÔÚiPhone×Ô´øµÄͨѶ¼ӦÓÃÖУ¬ÁªÏµÈËÊÇÄ£ÐͶÔÏó£¬ÔÚÒ»¸ö»æ»­Ó¦ÓÃÖУ¬Ô²ÐΡ¢¾ØÐÎÊÇÄ£ÐͶÔÏó¡£

±¾ÏîÄ¿µÄÓ¦ÓóÌÐòÓõ½µÄÊý¾Ý·Ç³£¼òµ¥¡ª¡ª×Ö·û´®£¬²¢ÇÒ¸Ã×Ö·û´®Ö»ÓÐÔÚ°´Å¥µã»÷µÄ·½·¨ÖÐÓõ½¡£Æäʵ»»Ò»ÖֽǶÈÀ´Ëµ£¬×Ö·û´®Ò²ÊÇÒ»ÖÖ×î¼òµ¥µÄÄ£ÐͶÔÏó£¬ÔÚÆäËûµÄÓ¦ÓóÌÐòÖУ¬Ä£ÐͶÔÏ󽫻á¸ü¼Ó¸´ÔÓ£¬²¢ÇÒÄ£ÐͶÔÏóÔÚ³ÌÐòÖÐÎÞ´¦²»ÔÚ£¬¿ÉÒÔÔÚ¶à¸öµØ·½½øÐзÃÎÊ¡£

ÊÓͼ¶ÔÏó(View)¸ºÔðÏÔʾÊý¾Ý£¬±ÈÈçUILabel¿ÉÒÔÏÔʾÎı¾¡¢UIImageView¿ÉÒÔÏÔʾͼƬ£¬Ò²»áÖ§³ÖÓû§¶ÔÊý¾ÝµÄ±à¼­²Ù×÷£¬ÀýÈçUITextField¿ÉÒÔÖ§³ÖÓû§ÊäÈë¡£

ÔÚÎÒÃǽÓÏÂÀ´Òª´´½¨µÄÏîÄ¿ÖУ¬ÐèÒªÒ»¸öÖ÷ÊÓͼÀ´°üº¬ÆäËü¼¸¸öÊÓͼ¡ª¡ªÊ×ÏÈÊÇÒ»¸öÎı¾ÊäÈë¿ò£¬ËüÓÃÓÚ²¶»ñÓû§ÊäÈëÐÅÏ¢£»È»ºóÊÇÒ»¸öÎı¾ÏÔʾ¿ò£¬ËüÓÃÓÚÏÔʾÎı¾£¬¶øÎı¾ÄÚÈÝÔòÊÇ»ùÓÚÓû§µÄÊäÈ룻ÁíÍ⻹ÐèÒªÒ»¸ö°´¼ü£¬ÈÃÓû§¿ÉÒÔµã»÷Ëü£¬µã»÷ºó֪ͨÎı¾×ֶθüС£

¿ØÖÆÆ÷¶ÔÏó(Controller)½éÓÚÄ£ÐͺÍÊÓͼ֮¼ä¡£

ÔÚÎÒÃǽÓÏÂÀ´Òª´´½¨µÄÏîÄ¿ÖУ¬µ±Óû§µã»÷°´Å¥ºó£¬´¥·¢¸üвÙ×÷£¬¿ØÖÆÆ÷¶ÔÏ󽫻á´ÓÎı¾ÊäÈë¿òÖлñÈ¡ÊäÈëµÄÎÄ×ÖÄÚÈÝ£¬²¢°ÑÎÄ×Ö´æ·ÅÔÚÒ»¸ö×Ö·û´®ÖУ¬È»ºóÔÙ°ÑÎı¾ÏÔʾ¿òµÄÄÚÈݸüгɸñʽ»¯ºÃµÄÄÚÈÝ¡£

½áºÏMVCģʽ£¬¶ÔÓÚ±¾ÏîÄ¿µÄÖ÷ÒªÁ÷³Ì£¬Õû¸öÈçͼËùʾ£º

Ä¿±ê - ¶¯×÷(Target - Action)

Ä¿±ê-¶¯×÷»úÖÆ£¬ÔÊÐíÒ»¸ö¿Ø¼þ¶ÔÏó(ÀýÈç°´¼ü»ò»¬¶¯Ìõ) ÏòÁíÍâÒ»¸ö¶ÔÏó·¢ËÍÒ»ÌõÏûÏ¢£¨¼´¶¯×÷£©£¬ÒÔÖ®×÷Ϊ¶Ôij¸öÓû§Ê¼þ£¨ÀýÈçÒ»¸öµã»÷ʼþ£©µÄÏìÓ¦¡£½ÓÊÕµ½ÏûÏ¢µÄ¶ÔÏóÔò¿ÉÒÔ¶ÔÏûÏ¢½øÐÐÏìÓ¦£¬²¢Õë¶ÔÒµÎñÒªÇó×ö³ö´¦Àí¡£

ÔÚ±¾ÏîÄ¿ÖУ¬µ±µã»÷°´Å¥Ê±£¬Ëü»á֪ͨ¿ØÖÆÆ÷È¥»ñÈ¡Îı¾ÊäÈë¿òÄÚÈÝ£¬²¢¸ù¾ÝÊäÈëÄÚÈݸüÐÂÎı¾ÏÔʾ¿ò¡£

¿ª·¢

´´½¨ÏîÄ¿

ÎÒÃǽ«¿ªÊ¼Ê¹ÓÃXcodeÀ´´´½¨ÏîÄ¿£¬Æô¶¯Xcode£¨È±Ê¡Çé¿öÏ£¬XcodeλÓÚ /Developer/Applications ÀïÃæ£©£¬È»ºóÑ¡ÔñFile > New > New Project£¬ÕâÑù¾Í¿ÉÒÔ´´½¨Ò»¸öÐµĹ¤³Ì¡£Ó¦¸Ã¿ÉÒÔ¿´µ½Ò»¸öеĴ°¿Ú£¬ÈçÏÂͼËùʾ£º

Ñ¡ÖÐ Window-Based Application ²¢µã»÷ Next °´Å¥£¬ÊäÈëProduct Name(ÏîÄ¿Ãû)£ºSayHello£¬ÔÚCompany IdentifierÄÇ£¬¿ÉÒÔÊäÈ빫˾ÃûΨһ±êʶ¡£

µã»÷Next£¬Ñ¡ÔñÏîÄ¿´æ´¢Î»Öã¬×îºóµã»÷Create°´Å¥¡£

Íê³ÉÉÏÊö²½Öèºó£¬½«¿´µ½ÈçϵÄÐÂÏîÄ¿´°¿Ú£º

ÔÚ½øÐÐÏÂÒ»²½¹¤×÷֮ǰ£¬¿ÉÒÔÏȱàÒëÔËÐÐһϳÌÐò£¬ÕâÑù¾Í¿ÉÒÔͨ¹ýÄ£ÄâÆ÷¿´µ½³ÌÐòÔËÐкóµÄÑù×Ó¡£ÔÚXcodeµÄ²Ëµ¥ÖÐÑ¡Ôñ Product > Run »òÕßµã»÷×óÉϽǹ¤¾ßÀ¸É쵀 Run °´Å¥£¬iPhoneÄ£ÄâÆ÷Ó¦¸Ã»á×Ô¶¯Æô¶¯¡£µ±Ó¦ÓóÌÐòÆô¶¯ºó£¬¿ÉÒÔ¿´µ½Ò»¸ö°×É«ÆÁÄ»¡£

Ó¦ÓóÌÐòÆô¶¯¹ý³Ì½âÎö

ͨ¹ýXcodeµÄÄ£°å´´½¨ÏîĿʱ£¬Ä£°åÒѾ­°ïÖúÉèÖúÃÁËÓ¦ÓóÌÐò»ù±¾³ÌÐò»·¾³£¬Ëü»á°ïÖú´´½¨Ò»¸öÓ¦ÓóÌÐò¶ÔÏ󣬽«Ó¦ÓóÌÐòºÍ´°¿ÚÁ¬½ÓÆðÀ´£¬½¨Á¢Ò»¸öÔËÐл·¾³¡£Õû¸öÆô¶¯¹ý³Ì´ÓUIApplicationMainº¯Êý¿ªÊ¼£¬ÈçÏÂͼËùʾ£º

main.mÎļþÖеÄmainº¯Êý»áµ÷ÓÃUIApplicationMainº¯Êý:

int retVal = UIApplicationMain(argc, argv, nil, nil);

¸Ãº¯Êý½«»á´´½¨Ò»¸öUIApplicaionÀàµÄʵÀý¡£Í¬Ê±Ëü»áËÑË÷Ó¦ÓóÌÐòµÄInfo.plistÊôÐÔÁбíÎļþ¡£ Info.plistÎļþÊÇÒ»²¿×ֵ䣬ËüÖ÷Òª°üº¬ÖîÈçÓ¦ÓóÌÐòÃû³Æ¡¢Í¼±êÕâÑùµÄÐÅÏ¢£¬ËüÒ²°üº¬Ó¦ÓóÌÐò¶ÔÏóÓ¦¸Ã¼ÓÔØµÄnib Îļþ£¨ËäÈ»¸ÃÎļþµÄÀ©Õ¹ÃûΪ¡°xib¡±£¬µ«ÊÇÎÒÃÇϰ¹ß³ÆÖ®Îª¡°nib Îļþ¡±£©µÄÃû³Æ¡£NibÎļþÖ÷ÒªÓÐÓû§½çÃæµÄÐÅÏ¢¡£±¾ÏîÄ¿µÄInfo.plistÎļþ¾ßÓÐÏÂÃæµÄÄÚÈÝ£º

ÊõÓ ËäÈ»Interface BuilderÎĵµµÄÀ©Õ¹Ãû¿ÉÄÜÊÇ¡°.xib¡± £¬µ«ÀúÊ·ÉÏ£¬ÆäÀ©Õ¹ÃûÊÇ¡°.nib¡±£¨¡°NextStep Interface Builder¡±µÄÊ××ÖĸËõд£©£¬Òò´ËÈËÃǾÍË×³ÆÆäΪ¡°NibÎļþ¡±¡£

Õâ±íÃ÷Ó¦ÓóÌÐòÆô¶¯Ê±½«»á¼ÓÔØMainWindow nibÎļþ¡£ÔÚXcodeÖпÉÒÔµ¥»÷MainWindow.xib½øÐв鿴£¨×¢ÒâÔÚXcode4ÖÐÒѾ­²»ÐèҪͨ¹ýInterface BuilderÀ´´ò¿ªnibÎļþ£¬¿ÉÒÔÖ±½ÓÔÚXcode¶ÔnibÎļþ½øÐв鿴ºÍ±à¼­£©£º

MainWindow NibÎĵµ°üº¬4¸ö¶ÔÏó£º

1.File's Owner£¬ÎļþÓµÓÐÕß´úÀí¶ÔÏó£¬ÔÚÕâÀïMainWindowµÄÓµÓÐÕß¶ÔÏóʱUIApplicationʵÀý

2.First Responder£¬µÚÒ»ÏìÓ¦Õß´úÀí¶ÔÏó£¬ÔÚ±¾ÏîÄ¿ÖУ¬Ã»ÓÐʹÓõ½

3.Say Hello App Delegate£¬SayHelloAppDelegateµÄʵÀý£¬Ò²¾ÍÊÇÓ¦ÓóÌÐòµÄίÍÐ

4.Window£¬Ò»¸ö´°¿Ú¶ÔÏó¡£ËüĬÈÏÊǰ×É«±³¾°£¬³ÌÐòÆô¶¯Ê±¿´µ½µÄ¾ÍÊÇËü

Ó¦ÓóÌÐò¶ÔÏóÔÚÍê³ÉÆô¶¯ºó£¬»áÏòίÍз¢ËÍapplicationDidFinishLaunching:ÏûÏ¢£¬Í¨Öª³ÌÐòÒѾ­Æô¶¯³É¹¦ÁË£¬ÕâÑùÎÒÃÇ¿ÉÒÔÔÚÊÕµ½Õâ¸öÏûÏ¢ºó¸ù¾ÝÐèÒª½øÐÐһЩ²Ù×÷¡£ÏÂͼÊÇÒ»¸ö¼ò»¯µÄiPhoneÓ¦ÓóÌÐòÉúÃüÖÜÆÚͼ£¬¼òҪչʾÁË·¢ÉúÔÚÓ¦ÓóÌÐòÆô¶¯µ½Í˳öµÄ¹ý³Ì¡£

ÕâÑù£¬ÎÒÃÇ»ù±¾Á˽âÁËÈçºÎ´´½¨Ò»¸öÏîÄ¿£¬ÒÔ¼°Ò»¸öÓ¦ÓóÌÐòµÄÆô¶¯¹ý³Ì£¬½ÓÏÂÀ´£¬ÎÒÃÇÐèÒª´´½¨Ò»¸öÊÓͼ¿ØÖÆÆ÷(UIViewController)ʵÀý£¬ÓÃÀ´ÊµÏÖÏîÄ¿¹¦ÄÜ¡£

Ìí¼ÓÊÓͼ¿ØÖÆÆ÷(UIViewController)

Ìí¼ÓÊÓͼ¿ØÖÆÆ÷Îļþ

ÔÚiPhoneÓ¦ÓóÌÐòÖУ¬ÊÓͼ¿ØÖÆÆ÷(UIViewController)ÆðןËÐÄ×÷Ó᣹ËÃû˼Ò壬ÊÓͼ¿ØÖÆÆ÷¸ºÔð¹ÜÀí¿ØÖÆÊÓͼ¡£ÔÚiPhoneÉÏ£¬ËüÃÇÒ²°ïÖú½øÐе¼º½ºÍÄÚ´æ¹ÜÀí¡£

Ñ¡ÖÐXcodeÏîÄ¿¹ÜÀíÆ÷ÀïµÄÏîÄ¿£¨¼´SayHelloÏîÄ¿£¬Î»ÓÚGroups and FilesÁбíµÄ¶¥²¿£©»òÕßÑ¡ÖÐSayHelloÎļþ¼Ð¡ª¡ªÐÂÎļþÔÚÌí¼Óʱ»á±»¼ÓÈëµ½µ±Ç°Ñ¡ÔñµÄλÖᣠѡÖкó£¬ÔÚXcode²Ëµ¥ÖÐÑ¡Ôñ File > New > New File£¬Ò²¿ÉÒÔÔÚÑ¡ÖеÄÎļþ¼ÐÉÏÃæµãÓÒ¼ü£¬Ñ¡Ôñ New File¡£

ÔÚNew File´°¿ÚÖУ¬ÇëÑ¡ÔñCocoa Touch£¬È»ºóÑ¡ÔñUIViewController subclass¡£

µã»÷ Next °´Å¥£¬ÔÚOptions´°¿Ú£¬Çë¹´Ñ¡ ¡°With XIB for user interface¡±¸´Ñ¡¿ò¡£Ñ¡ÖÐ ¡°With XIB for user interface¡±ºó£¬XcodeÔÚ´´½¨ÊÓͼ¿ØÖÆÆ÷µÄͬʱ£¬»áΪÆä´´½¨Ò»·ÝnibÎļþ£¬²¢½«¸ÃÎļþÌí¼Óµ½ÏîÄ¿ÖС£

µã»÷Next°´Å¥£¬ÔÚÆäºó³öÏֵı£´æÎļþ´°¿ÚÖУ¬ÎªÎļþÆð¸öÃû×Ö£¬ÀýÈçRootTimelineViewController£¬²¢Ñ¡ÔñÎļþ´æ´¢µÄλÖã¬ÈçÏÂËùʾ£º

µã»÷ Save£¬Îļþ»á±»Ìí¼Óµ½ÏîÄ¿ÖС£½ÓÏÂÀ´£¬ÎÒÃǽ«´´½¨¿ØÖÆÆ÷ÀàµÄʵÀý¡£

´´½¨ÊÓͼ¿ØÖÆÆ÷ʵÀý

ÏÖÔÚ£¬ÎÒÃÇÓÐÁËÊÓͼ¿ØÖÆÆ÷µÄÀàºÍnibÎļþ£¬µ«ÒªÔÚÓ¦ÓóÌÐò´úÀíÖÐʹÓÃËü£¬»¹±ØÐë´´½¨ÀàµÄʵÀý£¬²¢ÇÒ½«ÊµÀý´æ´¢ÔÚ±äÁ¿ÖУ¬ÒÔ±ã²Ù×÷Ëü¡£

ÔÚÓ¦ÓóÌÐòίÍÐÀàµÄÍ·Îļþ(¼´SayHelloAppDelegate.h)ÖÐÖ´ÐÐÏÂÊö²Ù×÷£º

ÔÚÒ»¸öÀàÖзÃÎÊÁíÒ»¸öÀ࣬Ê×ÏÈÐèÒªÒýÓñ»·ÃÎÊÀàµÄÍ·Îļþ¡£ËùÒÔÎÒÃÇÏÈÔÚÓ¦ÓóÌÐòίÍÐÍ·Îļþ(SayHelloAppDelegate.h)µÄ½Ó¿ÚÉùÃ÷Ç°Ãæ-¼´SayHelloAppDelegateÉùÃ÷Ç°ÃæÒýÓÃÊÓͼ¿ØÖÆÆ÷(RootViewController)µÄÍ·Îļþ£º

#import "RootViewController.h"

È»ºóÔÚÍ·Îļþ´óÀ¨ºÅÖ®¼äÌí¼ÓÏÂÃæµÄ´úÂ룬ÕâÊÇΪÁËÏòÓ¦ÓóÌÐòίÍÐÌí¼ÓÒ»¸öʵÀý±äÁ¿£º

RootViewController *viewController;

ÔÚ´óÀ¨ºÅÖ®ºó @end֮ǰÌí¼ÓÏÂÃæµÄÊôÐÔÉùÃ÷£º

@property (nonatomic, retain) RootViewController *viewController;

ÔÚÍ·ÎļþÖÐÌí¼ÓÍêÏàÓ¦±äÁ¿ºÍÊôÐÔÉêÃ÷ºó£¬ÐèÒªÔÚ¶ÔÓ¦µÄʵÏÖÎļþÖУ¬ºÏ³ÉÊôÐԵĴæÈ¡·½·¨£¬ÔÚdealloc·½·¨ÖÐÊÍ·ÅÊÓͼ¿ØÖÆÆ÷µÄʵÀý¡£

ÔÚÓ¦ÓóÌÐòίÍÐÀàµÄʵÏÖÎļþ(¼´SayHelloAppDelegate.m)ÖÐÖ´ÐÐÏÂÊö²Ù×÷£º

ÔÚÀàµÄ @implementation´úÂë¿éÖÐ֪ͨ±àÒëÆ÷ΪÊÓͼ¿ØÖÆÆ÷ºÏ³É´æÈ¡·½·¨£º

@synthesize viewController;

ÔÚdealloc·½·¨Æðʼ´¦ÊÍ·ÅÊÓͼ¿ØÖÆÆ÷£º

[viewController release];

ÎÒÃÇÒѾ­°ÑÊÓͼ¿ØÖÆÆ÷ÊôÐÔÌí¼Óµ½Ó¦ÓóÌÐòµÄίÍУ¬ÏÖÔÚÐèҪʵ¼Ê´´½¨Ò»¸öÊÓͼ¿ØÖÆÆ÷ʵÀý£¬²¢½«ÆäÉèÖÃΪÊôÐÔµÄÖµ¡£

ÔÚÓ¦ÓóÌÐòίÍÐÀàʵÏÖÎļþ£¨¼´SayHelloWorldAppDelegate.mÎļþ£©ÖеÄapplicationDidFinishLaunching: ·½·¨¿ªÍ·Ìí¼ÓÈçÏ´úÂ룬ÕâЩ´úÂëÓÃÓÚ´´½¨Ò»¸öRootViewControllerʵÀý£º

RootViewController *controller = [[RootViewController alloc]initWithNibName:@"RootViewController" bundle:nil];
self.viewController = controller;
[controller release];

Õâ¶Î´úÂëµÄ×÷ÓÃÈçÏ£º

´´½¨RootViewControllerÕâ¸öÊÓͼ¿ØÖÆÆ÷µÄʵÀý¡£Ê¹ÓÃalloc·½·¨´´½¨Ò»¸öÊÓͼ¿ØÖÆÆ÷£¬È»ºóÓÃinitWithNibName:bundle:·½·¨¶ÔÆä½øÐгõʼ»¯¡£init·½·¨ÏÈÖ¸¶¨¿ØÖÆÆ÷Ó¦¼ÓÔØµÄnibÎļþ£¬È»ºóÖ¸¶¨ÔÚÄĸö³ÌÐò°üÖпÉÕÒµ½¸ÃÎļþ¡£³ÌÐò°üÊÇÎļþϵͳij¸öλÖõijéÏ󣬸ÃλÖôæ·ÅÁËÓ¦ÓóÌÐò½«»áÓõ½µÄ´úÂëºÍ×ÊÔ´¡£

ʹÓÃÊôÐԵĴæÈ¡·½·¨£¬½«´´½¨ºÃµÄÊÓͼ¿ØÖÆÆ÷ʵÀýÉèÖÃΪviewControllerÊôÐÔ±äÁ¿µÄÖµ

¸ù¾ÝÄÚ´æ¹ÜÀí¹æÔòÊÍ·ÅÊÓͼ¿ØÖÆÆ÷

ÊÓͼ¿ØÖÆÆ÷ÓÃÀ´ÅäÖú͹ÜÀíÔÚÓ¦ÓóÌÐòÖп´µ½µÄÊÓͼ£¬Ã¿Ò»¸öÊÓͼҲ¶ÔÓ¦ÓÐÒ»¸öÊÓͼ¿ØÖÆÆ÷À´¹ÜÀí¡£´°Ì壨window£©ÓÐÒ»¸ö¸ùÊÓͼ¿ØÖÆÆ÷¡ª¡ªÕâ¸öÊÓͼ¿ØÖÆÆ÷¸ºÔðÅäÖõ±´°ÌåÏÔʾʱ×îÏÈÏÔʾµÄÊÓͼ¡£ÒªÈÃÄãµÄÊÓͼ¿ØÖÆÆ÷µÄÄÚÈÝÏÔʾÔÚ´°ÌåÖУ¬ÐèҪȥÉèÖô°ÌåµÄ¸ùÊÓͼ¿ØÖÆÆ÷ΪÄãµÄÊÓͼ¿ØÖÆÆ÷¡£

ËùÒÔÎÒÃǵÄÏîÄ¿ÖУ¬ÔÚÉÏÃæ´´½¨ÊÓͼ¿ØÖÆÆ÷ʵÀý´úÂëºóÃæÔÙÌí¼ÓÒ»ÐдúÂ룬À´ÉèÖô°ÌåµÄ¸ùÊÓͼ¿ØÖÆÆ÷ΪÎÒÃÇÐÂÌí¼ÓµÄÊÓͼ¿ØÖÆÆ÷£º

self.window.rootViewController = controller;

×îºóÒ»ÐÐÀ´×ÔÓÚXcodeÌṩµÄÄ£°å×Ô¶¯Éú³ÉµÄ´úÂ룺

[self.window makeKeyAndVisible];

ÕâÐдúÂë»áÈðüº¬ÁËÊÓͼ¿ØÖÆÆ÷ÊÓͼµÄWindow´°¿ÚÏÔʾÔÚÆÁÄ»ÉÏ¡£

±¾ÕÂÍêÕû´úÂ룬SayHelloAppDelegate.hÎļþ£º

#import 
#import "RootViewController.h"
@interface SayHelloAppDelegate : NSObject  {
RootViewController *viewController;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) RootViewController *viewController;
@end

SayHelloAppDelegate.mÎļþ£º

#import "SayHelloAppDelegate.h"
@implementation SayHelloAppDelegate
@synthesize window=_window;
@synthesize viewController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
RootViewController *controller = [[RootViewController alloc]initWithNibName:@"RootViewController" bundle:nil];
self.viewController = controller;
[controller release];
self.window.rootViewController = controller;
[self.window makeKeyAndVisible];
return YES;
}
- (void)dealloc
{
[_window release];
[viewController release];
[super dealloc];
}
@end

²âÊÔÔËÐÐ

ÔÚXcodeµÄ²Ëµ¥ÖÐÑ¡Ôñ Product > Run »òÕßµã»÷×óÉϽǹ¤¾ßÀ¸É쵀 Run °´Å¥£¬iPhoneÄ£ÄâÆ÷Ó¦¸Ã»á×Ô¶¯Æô¶¯¡£µ±Ó¦ÓóÌÐòÆô¶¯ºó£¬»¹ÊÇ¿´µ½Ò»¸ö°×É«ÆÁÄ»£¬²»¹ýµÚÒ»´Î¿´µ½µÄ°×É«ÆÁÄ»£¬ÊÇÓ¦ÓóÌÐò´úÀíÖеÄWindow£¬¶øÕâ´Î¿´µ½µÄ°×É«ÆÁÄ»£¬ÊÇÊÓͼ¿ØÖÆÆ÷RootViewControllerÖеÄÊÓͼ¡£

ÏÂÒ»²½£¬ÎÒÃǽ«¿ªÊ¼¶Ô½çÃæ½øÐб༭¡£

±à¼­NibÎļþ

ÔÚiPhone¿ª·¢ÖУ¬Ò»°ã¶¼»áÓÃNIBÎļþÀ´À´¸ºÔð½çÃæÏÔʾ£¬Ò²¾ÍÊÇMVCÄ£ÐÍÀïÃæµÄÊÓͼ¶ÔÏ󣬶øNIBÎļþÖ»°üº¬Óû§½çÃæÔªËØ£¬²»°üº¬ÈκÎÔ´Â룬ÄÇôÔõôÈÃÊÓͼ¶ÔÏóºÍÊÓͼ¿ØÖÆÆ÷¹ØÁªÆðÀ´ÄØ£¿Õâ¾ÍÐèÒªÓõ½Á½¸ö·Ç³£ÖØÒªµÄ¸ÅÄ²å×ù±äÁ¿£¨outlet£©ºÍÎļþÓµÓÐÕß´úÀí¶ÔÏó£¨File's Owner£©¡£

ÊÓͼ¿ØÖÆÆ÷µÄÊÓͼºÍNibÎļþ

ÊÓͼ¿ØÖÆÆ÷Ö÷ÒªµÄÖ°Ôð¾ÍÊÇÅäÖú͹ÜÀíÓ¦ÓóÌÐòÖÐËùÓеÄÊÓͼ£¬Ò»°ãÀ´Ëµ£¬ÊÓͼ¿ØÖÆÆ÷µÄÊÓͼÊÇ·ÅÔÚÒ»¸öNibÎļþÖУ¬µ±È»Ò²¿ÉÒÔ²»ÐèÒªNibÎļþ£¬Í¨¹ý³ÌÐò´´½¨ÊÓͼ£¬µäÐ͵ÄÈçUITableViewControllerÕâÑùµÄÊÓͼ¿ØÖÆÆ÷£¬¾Í¿ÉÒÔ²»ÐèÒªNibÎļþ¡£ÔÚ´´½¨ÊÓͼ¿ØÖÆÆ÷ʵÀýʱ£¬ÆäÖÐÒ»¸öÖ÷ÒªµÄ¹¹Ô캯Êý initWithNibName:bundle: µÄµÚÒ»¸ö²ÎÊý¾ÍÊÇÊÓͼ¿ØÖÆÆ÷¶ÔÓ¦µÄNibÎļþµÄÃû×Ö¡£ÊÓͼ¿ØÖÆÆ÷ÔÚÆä loadView ·½·¨ÖмÓÔØËüµÄNibÎļþ¡£Èç¹ûÊÇʹÓà initWithNibName:bundle: ¹¹Ô캯ÊýÉú³ÉµÄʵÀý£¬²¢ÇÒÄãÏëÔÚÊÓͼ¼ÓÔØÍê³Éºó½øÐжîÍâµÄÉèÖã¬Ö»ÒªÖØÐ´ÊÓͼ¿ØÖÆÆ÷µÄ viewDidLoad ·½·¨¾ÍºÃÁË¡£

ÔÚXcodeÖеã»÷´ò¿ªÊÓͼ¿ØÖÆÆ÷µÄNibÎļþ£¨¼´RootViewController.xibÎļþ£©£¬ÔÚXcodeÖм´¿ÉÖ±½Ó²é¿´ºÍ±à¼­¡£Îļþ°üº¬Èý¸ö¶ÔÏó£¬ÎļþÓµÓÐÕß´úÀí£¨File's Owner£©£¬µÚÒ»ÏìÓ¦Õß´úÀí£¨First Responder£©ÒÔ¼°Ò»¸öÊÓͼ£¨View£©¡£ÊÓͼ£¨View£©ÊÇÊÓͼ¿ØÖÆÆ÷µÄÖ÷ÊÓͼ£¬ÔÚÖ÷ÊÓͼÖл¹¿ÉÒÔÌí¼ÓÈô¸É×ÓÊÓͼ¡£ÎļþÓµÓÐÕß´úÀí(File's Owner)´ú±íNibÎļþ¶ÔÓ¦µÄÊÓͼ¿ØÖÆÆ÷Àà¡£Àí½âÎļþËùÓÐÕß´úÀíµÄ½ÇÉ«£¬ÒÔ¼°ÈçºÎ½¨Á¢ÎļþËùÓÐÕߺÍNibÎļþÖнçÃæÔªËØÖ®¼äµÄÁ¬½Ó£¬ÊǷdz£ÖØÒªµÄ¡£

СÌùÊ¿£º ÔÚXcodeÖб༭NibÎļþʱ£¬¿ÉÒÔͨ¹ýµã»÷ÓÒÉϽǹ¤¾ßÀ¸°´Å¥ÏÔʾÒþ²ØÏàÓ¦Ãæ°å£¬·½±ã¶Ô½çÃæ±à¼­ºÍÊôÐÔÉèÖá£

ÎļþÓµÓÐÕß(File's Owner)

ÔÚÒ»¸öNibÎļþÖУ¬ÎļþÓµÓÐÕß¶ÔÏóÊÇÆäÖÐ×îÖØÒªµÄ¶ÔÏóÖ®Ò»£¬ÒòΪÕýÊÇͨ¹ýËü£¬À´½¨Á¢ÆðÓ¦ÓóÌÐò´úÂëºÍNib½çÃæÎļþÖжÔÏóÖ®¼äµÄÁ¬½Ó£¬¾ßÌåÀ´Ëµ£¬Ëü¾ÍÊǶÔÓ¦NibÎļþµÄÊÓͼ¿ØÖÆÆ÷¶ÔÏó¡£ÒÔ±¾ÏîĿΪÀý£¬RootViewController.xibÕâ¸öNibÎļþµÄÎļþÓµÓÐÕß¶ÔÏó¾ÍÊÇRootViewControllerÀàµÄʵÀý¡£

Ò»°ãÀ´Ëµ£¬ÔÚʹÓÃÄ£°åͬʱ´´½¨UIViewControllerÎļþºÍ¶ÔÓ¦µÄNibÎļþʱ£¬ËüĬÈÏ»áÉèÖÃNibÎļþ¶ÔÓ¦µÄÎļþÓµÓÐÕßΪ´´½¨µÄUIViewControllerÀà¡£Èç¹ûÒªÐ޸ĻòÕßÉèÖÃNibÎļþ¶ÔÓ¦µÄÎļþÓµÓÐÕߣ¬¿ÉÒÔʹÓà Identity Inspector Ãæ°å½øÐÐÉèÖá£

ÈçÉÏͼËùʾ£¬ ±¾ÏîÄ¿µÄRootViewController.xibÎļþ¶ÔÓ¦µÄÎļþËùÓÐÕߣ¬ÔÚIdentity Inspector Ãæ°åÖУ¬Custom Class²¿·ÖµÄClassÏ¿ÉÒÔ¿´µ½¶ÔÓ¦µÄÖµÊÇRootViewController£¬Õâ±íʾÎļþÓµÓÐÕß¾ÍÊÇRootViewControllerÀàµÄʵÀý£¬¾Í¿ÉÒÔÔÚXcodeÖзÃÎÊÎļþÓµÓÐÕßÀàÀïÃæ±ê־ΪIBOutletµÄÊôÐÔºÍIBActionµÄ·½·¨£¬ºÍNibÎļþÖеĽçÃæÔªËØ½¨Á¢¹ØÁª¡£

ÊÓͼ²å×ù±äÁ¿

ÔÚXcodeÖУ¬Ê¹Óà Inspector Ãæ°å£¬»òÕßÔÚÁ¬½ÓÃæ°å£¬¿ÉÒԲ鿴¡¢´´½¨¡¢É¾³ý¶ÔÏóÖ®¼äµÄÁ¬½Ó¡£Òª²é¿´ÊÓͼ¿ØÖÆÆ÷µÄÁ¬½Ó£¬¿ÉÒÔͨ¹ýÒÔϲ½Ö裺

1.ÔÚXcodeµÄ½çÃæÖУ¬´Ó×ó²àµÄÎļþ×éÑ¡ÖÐÒª²é¿´µÄÊÓͼ¿ØÖÆÆ÷µÄXibÎļþ

2.ÔÚÊÓͼ±à¼­½çÃæ£¬µã»÷Ñ¡ÖÐ File's Owner

3.ÔÚ Inspector Ãæ°å£¬Ñ¡ÖÐ Connection inspector£¬ÕâÀï»áÏÔʾÎļþËùÓÐÕßËùÓеIJå×ùÁ¬½Ó

4.ÔÚÊÓͼ±à¼­½çÃæ£¬°´×¡Control¼üµã»÷ File's Owner »òÕßÔÚ File's OwnerÉϵã»÷ÓÒ¼ü£¬µ¯³öÒ»¸öºÚÉ«°ë͸Ã÷µÄÃæ°åÏÔʾÎļþËùÓÐÕßµÄËùÓÐÁ¬½Ó

ÔÚÉÏÃæµÚÈý²½£¬ÓÒ²àÃæ°åÏÔʾµÄÁ¬½ÓÃæ°åºÍÓÒ¼üµã»÷File's Ownerµ¯³öµÄ°ë͸Ã÷Á¬½ÓÃæ°å£¬ÏÔʾµÄÐÅÏ¢ºÍ×÷Óö¼ÊÇÒ»ÑùµÄ£¬¿ÉÒÔ¸ù¾Ý¸öÈËϰ¹ßÁé»îʹÓᣵ½Ä¿Ç°ÎªÖ¹Î¨Ò»µÄÁ¬½ÓÊÇÊÓͼ¿ØÖÆÆ÷µÄ view ²å×ù±äÁ¿¡£Ò»¸ö²å×ù±äÁ¿¾Í¶ÔÓ¦ÊÓͼ¿ØÖÆÆ÷ÀàµÄÒ»¸öÊôÐÔ£¨ÓÐʱºòÒ²¿ÉÒÔÊÇÒ»¸öʵÀý±äÁ¿£©£¬Ö»²»¹ýÕâ¸öÊôÐÔºÍnibÎļþÖеÄij¸ö½çÃæÔªËØÁ¬½ÓÔÚÒ»Æð¡£´Ë´¦µÄviewµÄÁ¬½Ó£¬±íÃ÷µ±nibÎļþ RootViewController.xib ±»¼ÓÔØ£¬²¢ÇÒUIViewµÄʵÀý½âµµÖ®ºó£¬ÊÓͼ¿ØÖÆÆ÷µÄviewʵÀý±äÁ¿»á±»ÉèÖÃΪָÏònibÎļþÖеÄÊÓͼ¡£

Öмä²âÊÔ

ÔÚÏîÄ¿¿ª·¢ÖУ¬ÓÈÆäÔÚ¶Ô¿ª·¢¹¤¾ßºÍÓïÑÔ²»ÊìϤµÄʱºò£¬ÐèÒª¾­³£ÐԵĶÔÐÂÔöµÄ¹¦ÄܽøÐвâÊÔ£¬ÒÔÈ·±£µ±Ç°¹¦ÄÜÔËÐÐÊÇÕý³£µÄ¡£±ÈÈçÎÒÃÇÐÂÔöÁËRootViewControllerÕâ¸ö×Ô¶¨ÒåÊÓͼ¿ØÖÆÆ÷£¬ÐèҪȥ²âÊÔÒ»ÏÂËüÊDz»ÊÇÒѾ­³É¹¦Ìí¼Ó¡£Òª²âÊÔÊÓͼ¿ØÖÆÆ÷¹¤×÷Õý³££¬¼òµ¥µÄ°ì·¨ÐÞ¸ÄÊÓͼ¿ØÖÆÆ÷µÄÊÓͼµÄ±³¾°É«£¬ÀýÈçÐÞ¸ÄΪ·ÛºìÉ«±³¾°£¬È»ºóÖØÐÂÔËÐУ¬¿´¿´ÊDz»ÊǽçÃæ±ä³ÉÁ˺ìÉ«±³¾°¡£

ÒªÉèÖÃÊÓͼ¿ØÖÆÆ÷µÄÊÓͼµÄ±³¾°É«£¬²½ÖèÈçÏ£º

1.ÔÚXcodeµÄ½çÃæÖУ¬´Ó×ó²àµÄÎļþ×éÑ¡ÖÐÊÓͼ¿ØÖÆÆ÷µÄXibÎļþ£¨RootViewController.xib£©

2.ÔÚÓÒ²àµÄ¹¦ÄÜÇøÓò£¬Ñ¡ÔñÊôÐÔÃæ°å£¨Attributes inspector£©

3.ÔÚ±à¼­ÇøÓò£¬Ñ¡ÔñÊÓͼ

4.ÔÚÊÓͼµÄÊôÐÔÃæ°å£¬µã»÷±³¾°É«£¨Background£©¶ÔÓ¦µÄÑÕÉ«ÏÂÀ­¿ò£¬»áµ¯³öÑÕɫѡÔñÃæ°å

5.ÔÚÑÕɫѡÔñÃæ°å£¬Ñ¡ÔñÒ»¸öºÏÊʵÄÑÕÉ«£¬ÀýÈç·ÛºìÉ«

6.±£´ænibÎļþ

7.µã»÷×óÉϽǹ¤¾ßÀ¸µÄRun°´Å¥£¬±àÒëÔËÐÐÏîÄ¿

Õý³£Çé¿öÏ£¬±àÒëÓ¦¸Ã²»»á³öÏÖÈκδíÎó£¬ÔËÐкó»áµ¯³öÄ£ÄâÆ÷£¬½á¹ûÈçÏÂͼËùʾ£º

È·ÈÏûÓÐÎÊÌâºó£¬ÔÙ½«Ó¦Óõı³¾°É«»¹Ô­¡£»¹Ô­µÄ»°£¬½«ÊÓͼµÄ±³¾°É«ÉèÖÃΪ°×É«¾ÍºÃÁË¡£

ÅäÖÃÊÓͼ

XcodeÌṩÁËÒ»Ì×¶ÔÏó¿â£¬¿ÉÒÔÖ±½ÓÌí¼Óµ½NibÎļþÖС£ÆäÖÐÒ»²¿·Öʾ½çÃæÔªËØ£¬ÀýÈç°´Å¥ºÍÎı¾ÊäÈë¿ò£»ÆäËûÒ»²¿·ÖÊÇ¿ØÖÆÆ÷¶ÔÏó£¬ÀýÈçÊÓͼ¿ØÖÆÆ÷¡£ÎÒÃǵ±Ç°ÏîÄ¿µÄnibÎļþÒѾ­°üº¬ÁËÊÓͼ£¬ÏÖÔÚÖ»ÒªÌí¼Ó°´Å¥ºÍÎı¾ÊäÈë¿ò¾ÍºÃÁË¡£´Ó¶ÔÏó¿âÖн«Óû§½çÃæÔªËØÍ϶¯µ½ÊÓͼÖУ¬»ù±¾²½ÖèÈçÏ£º

1.ÔÚXcodeµÄ½çÃæÖУ¬´Ó×ó²àµÄÎļþ×éÑ¡ÖÐÊÓͼ¿ØÖÆÆ÷µÄXibÎļþ£¨RootViewController.xib£©

2.ÔÚÓÒ²àµÄ¹¦ÄÜÇøÓò£¬ÏÔʾ¶ÔÏó¿â£¨object library£©

3.Ìí¼ÓÒ»¸ö°´Å¥£¨UIButton£©£¬Ò»¸öÎı¾ÊäÈë¿ò£¨UITextField£©£¬Á½¸öÎı¾±êÇ©£¨UILabel£©µ½ÊÓͼÖС£¿ÉÒÔ´Ó¶ÔÏó¿âÀïÃæÍ϶¯²¢½«ËüÃǷŵ½ÊÓͼ

4.²Î¿¼Ç°ÃæµÄÔ­ÐÍÉè¼Æ£¬¶Ô½çÃæÔªËØµÄ³ß´çºÍ²¼¾Ö½øÐе÷Õû

5.½«ÓҲ๦ÄÜÇøÓòÇл»µ½ÊôÐÔÃæ°å£¨Attributes inspector£©

6.Ñ¡ÖÐÎı¾ÊäÈë¿ò£¨Text Field£©£¬ÉèÖÃPlaceholdÊôÐÔΪ¡°ÇëÊäÈëÐÕÃû¡±

7.Ñ¡ÖÐ×óÉϲàµÄÎı¾±êÇ©£¨UILabel£©£¬ÉèÖÃTextÊôÐÔΪ¡°ÐÕÃû¡±

8.Ñ¡ÖÐÏÂÃæµÄÎı¾±êÇ©£¨UILabel£©£¬ÉèÖÃTextÊôÐÔΪ¿Õ£¬AlignmentÊôÐÔÉèÖÃΪ¾ÓÖÐ¶ÔÆë

9.Ñ¡Öа´Å¥£¨UIButton£©£¬ÉèÖÃTitleÊôÐÔΪ¡°Õкô¡±

10.ÉèÖúõĽçÃæÈçÏÂËùʾ£º

Èç¹ûÎÒÃÇÏëÈÃÓû§ÔÚÊäÈëʱÓÐһЩ¸üºÃµÄÌåÑ飬±ÈÈçÓû§ÊäÈëÓ¢ÎÄÃûʱ£¬Ä¬ÈÏ»áÊ××Öĸ´óд£»±ÈÈç¼üÅÌ»áÏÔʾÍê³É£¨Done£©°´¼ü£¬µã»÷ºóÍê³ÉÊäÈëÒþ²Ø¼üÅÌ¡£ÒªÖ§³ÖÕâÑùµÄÊäÈëϸ½Ú£¬Í¨¹ýÉèÖÃÎı¾¿òÊôÐԾͿÉÒÔÍê³É£º

ÔÚCapitalizationÏÂÀ­ÁÐ±í£¬Ñ¡ÔñWords£¬ÒÔÖ§³ÖÊ××Öĸ´óд

ÔÚReturn KeyÏÂÀ­ÁÐ±í£¬Ñ¡ÔñDone£¬ÒÔÖ§³Ö¼üÅÌÉÏÏÔʾÍê³É£¨Done£©°´¼ü

±£´æÎļþºó£¬±àÒëÔËÐгÌÐò£¬¿ÉÒÔ¿´µ½ÔËÐеĽçÃæÐ§¹ûºÍÎÒÃÇÔÚXcodeÖаڷŵÄЧ¹ûÊÇÒ»ÑùµÄ¡£µã»÷°´Å¥£¬°´Å¥»á¸ßÁÁ£¬ÔÚÎı¾ÊäÈë¿òÖеã»÷£¬»áµ¯³öÊäÈë¼üÅÌ£¬¼üÅÌÀï¿ÉÒÔ¿´µ½Íê³É£¨Done£©°´Å¥¡£µ«ÊÇ»¹²»Äܸù¾ÝÊäÈëµÄÄÚÈÝÈ¥ÏÔʾÎÄ×Ö£¬»¹²»ÄÜÒþ²Ø¼üÅÌ£¬ÒòΪĿǰÎÒÃÇ»¹½ö½öÍê³ÉÁËÊÓͼ²¿·ÖµÄ¹¤×÷£¬»¹ÐèÒªÈÃÊÓͼÖеĶÔÏóºÍÊÓͼ¿ØÖÆÆ÷µÄ¶ÔÏóÖ®¼ä½¨Á¢Á¬½Ó£¬²¢Ìí¼ÓÏàÓ¦µÄÂß¼­£¬²ÅÄÜʵÏÖ¡£

ʵÏÖÊÓͼ¿ØÖÆÆ÷

ʵÏÖÊÓͼ¿ØÖÆÆ÷ÐèÒªÍê³ÉÒÔϼ¸¼þÊ£º

1.¶¨Òå²å×ù±äÁ¿ºÍ¶¯×÷·½·¨£¬ºÍNibÎļþµÄÊÓͼÖеĽçÃæÔªËØ½øÐйØÁª

2.ʵÏÖµã»÷°´Å¥ºóµÄÏà¹ØÂß¼­¡ª¡ª¸ù¾ÝÊäÈëµÄÃû×ÖÏÔʾÏàÓ¦µÄÕкôÓÅжÏÊäÈëµÄÃû×ÖÊDz»ÊÇΪ¿ÕÊDz»Êdz¬³¤

3.Óû§µã»÷¼üÅÌÉϵÄÍê³É£¨Done£©°´¼üºó£¬¼üÅÌ»áÏûʧ

½¨Á¢Á¬½Ó

´ÓÒµÎñ½Ç¶ÈÀ´¿´£¬ÎÒÃÇÐèÒªºÍ½çÃæµÄ¼¸¸öÔªËØ½¨Á¢¹ØÁª£º

1.Îı¾ÊäÈë¿ò£¬»ñÈ¡ËüµÄÊäÈëÎÄ×Ö

2.Îı¾±êÇ©£¬ÈÃËüÏÔÊ¾ÌØ¶¨ÎÄ×Ö

3.°´Å¥£¬ÏìÓ¦ËüµÄµã»÷ʼþ

ÔÚXcode4֮ǰ£¬Interface BuilderºÍXcodeÊÇ·Ö¿ªµÄ£¬Ò»°ãÊÇÏÈÔÚXcodeÖж¨ÒåºÃ²å×ù±äÁ¿ºÍ¶¯×÷·½·¨£¬È»ºóÔÙÔÚInterfaceBuilderÖÐÈ¥½¨Á¢½çÃæÔªËØºÍÊÓͼ¿ØÖÆÆ÷Ö®¼äµÄÁ¬½Ó£¬µ½Xcode4Ö®ºó£¬Interface BuilderºÍXcodeÒѾ­Í³Ò»ºÏ²¢ÔÚÁËÒ»Æð£¬ËùÒÔÕⲿ·ÖÒ²ÓÐһЩ±ä»¯£¬Xcode4ÈÃÕⲿ·Ö¹¤×÷±äµÄ¸ü¼ÓÈÝÒ×һЩ£¬¿ÉÒÔÖ±½Ó´ÓÊÓͼ±à¼­½çÃæÍ϶¯Á¬½Óµ½´úÂëÎļþ¡£

ÔÚÎÒÃÇÕýÔÚ¿ª·¢µÄSayHelloÏîÄ¿ÖУ¬ÏÖÔÚÎÒÃÇÐèÒªÌí¼ÓÒ»¸ö¶¯×÷·½·¨µ½ÊÓͼ¿ØÖÆÆ÷£¬µ±½çÃæÉϵİ´Å¥±»µã»÷ʱ£¬Ëü»á·¢ËÍÒ»¸ösayHello:ÏûÏ¢µ½ÊÓͼ¿ØÖÆÆ÷£¬ËùÒÔ½ÓÏÂÀ´ÒªÎª°´Å¥´´½¨Ò»¸ösayHello:¶¯×÷·½·¨£º

1.ÔÚXcodeÖУ¬Ñ¡ÔñÊÓͼ¿ØÖÆÆ÷¶ÔÓ¦µÄNibÎļþ£¨RootViewController.xib£©

2.ÏÔʾAssistant editor

3.ÈÃAssistantÏÔʾÊÓͼ¿ØÖÆÆ÷µÄÍ·Îļþ£¨RootViewController.h£©

4.°´×¡Control¼ü£¬´ÓNibÎļþÖеİ´Å¥Í϶¯µ½Í·ÎļþµÄ·½·¨ÉùÃ÷´úÂëÇøÓò

5.ÔÚµ¯³öµÄÃæ°åÖУ¬½«°´Å¥ºÍÊÓͼ¿ØÖÆÆ÷Ö®¼äµÄÁ¬½ÓÉèÖÃΪ¶¯×÷£¨Action£©

ÉèÖà Connection Ϊ Action

ÉèÖà Name Ϊ sayHello:

ÉèÖà Type Ϊ id

ÉèÖà Event Ϊ Touch Up Inside£¬Ò²¾ÍÊÇÓû§ÔÚµã»÷°´Å¥£¬È»ºóÊͷź󴥷¢

ÉèÖà Arguments Ϊ Sender

6.µã»÷Connect½¨Á¢Á¬½Ó

ͨ¹ýÉÏÃæµÄΪ°´Å¥Ìí¼Ó¶¯×÷µÄ²Ù×÷£¬Íê³ÉÁËÁ½¼þÊÂ

Ìí¼ÓÁËÏàÓ¦µÄ´úÂëµ½ÊÓͼ¿ØÖÆÆ÷µÄÀàÖÐ

Í·ÎļþÖÐÔö¼ÓÁËÈçÏ´úÂ룺

(IBAction)sayHello:(id)sender;

²¢ÇÒʵÏÖÎļþÖÐÔö¼ÓÁËÏàÓ¦µÄʵÏÖ·½·¨£º

(IBAction)sayHello:(id)sender {}

IBAction ÊÇÒ»¸öÌØÊâµÄ¹Ø¼ü×Ö£¬ËüΨһµÄ×÷ÓÃÊǸæËßInterface Builder½«Ä³¸ö·½·¨µ±³ÉÄ¿±ê/¶¯×÷¹ØÁªÖе͝×÷¡£Ëü±»¶¨ÒåΪvoid¡£

½¨Á¢Á˰´Å¥µ½ÊÓͼ¿ØÖÆÆ÷Ö®¼äµÄÁ¬½Ó¡£½¨Á¢Á¬½ÓµÄÒâÒ壬µÈͬÓÚÔÚ°´Å¥Éϵ÷Óà addTarget:action:forControlEvents: £¬²¢ÇÒ target ÊÇÎļþÓµÓÐÕߣ¨File's Owner£©Ò²¾ÍÊÇÊÓͼ¿ØÖÆÆ÷£¬action ÊÇ sayHello: ·½·¨£¬¶ÔÓ¦µÄʼþÊÇ UIControlEventTouchUpInside¡£

½ÓÏÂÀ´Òª½¨Á¢Îı¾ÊäÈë¿òºÍÎı¾±êǩ֮¼äµÄÁ¬½Ó£º

1.ÔÚXcodeÖУ¬Ñ¡ÔñÊÓͼ¿ØÖÆÆ÷¶ÔÓ¦µÄNibÎļþ£¨RootViewController.xib£©

2.ÏÔʾAssistant editor

3.ÈÃAssistantÏÔʾÊÓͼ¿ØÖÆÆ÷µÄÍ·Îļþ£¨RootViewController.h£©

4.°´×¡Control¼ü£¬´ÓNibÎļþÖеÄÎı¾ÊäÈë¿òÍ϶¯µ½Í·ÎļþµÄ·½·¨ÉùÃ÷´úÂëÇøÓò

5.ÔÚµ¯³öµÄÃæ°åÖУ¬½«Îı¾ÊäÈë¿òºÍÊÓͼ¿ØÖÆÆ÷Ö®¼äµÄÁ¬½ÓÉèÖÃΪ²å×ù£¨Outlet£©

ÉèÖà Connection Ϊ Outlet

ÉèÖà Name Ϊ nameTextField

ÉèÖà Type Ϊ UITextField

6.µã»÷Connect½¨Á¢Á¬½Ó

ͨ¹ýÉÏÃæµÄΪÎı¾ÊäÈë¿òÌí¼Ó²å×ù±äÁ¿µÄ²Ù×÷£¬Íê³ÉÁËÁ½¼þÊÂ

1.Ìí¼ÓÁËÏàÓ¦µÄ´úÂëµ½ÊÓͼ¿ØÖÆÆ÷µÄÀàÖÐ

Í·ÎļþÖÐÔö¼ÓÁËÈçÏ´úÂ룺

@property (nonatomic, retain) IBOutlet UITextField *nameTextField;

²¢ÇÒʵÏÖÎļþÖÐÔö¼ÓÁËÏàÓ¦µÄʵÏÖ·½·¨£º

ÔÚ¶¥²¿Ôö¼ÓÁË£º

@synthesize nameTextField;

ÔÚ dealloc ·½·¨ÖÐÌí¼ÓÁË

[nameTextField release];

ÔÚ viewDidUnload ·½·¨ÖÐÌí¼ÓÁË£º

[self setNameTextField:nil];

IBOutletÊÇÒ»¸öÌØÊâµÄ¹Ø¼ü×Ö£¬ËüΨһµÄ×÷ÓÃÊÇ֪ͨInterface Builder½«Ä³¸öʵÀý±äÁ¿»òÕßÊôÐÔµ±³É²å×ù±äÁ¿¡£Êµ¼ÊÉÏ£¬Õâ¸ö¹Ø¼ü×Ö±»¶¨ÒåΪ¿Õ°×£¬Òò´ËÔÚ±àÒëµÄʱºòËüûÓÐÈκÎ×÷Óá£

2.½¨Á¢ÁËÎı¾ÊäÈë¿òµ½ÊÓͼ¿ØÖÆÆ÷Ö®¼äµÄÁ¬½Ó¡£½¨Á¢Á¬½ÓµÄÒâÒ壬µÈͬÓÚÔÚÊÓͼ¿ØÖÆÆ÷Éϵ÷Óà setNameTextFiled: ·½·¨£¬½«Îı¾ÊäÈë¿ò×÷Ϊ²ÎÊý´«Èë¡£

°´ÕÕÉÏÃæ´´½¨Îı¾ÊäÈë¿ò²å×ù±äÁ¿ÏàͬµÄ·½·¨£¬ÔÙ½¨Á¢ÓÃÀ´ÏÔʾÎʺòÓïµÄÎı¾±êÇ©µÄ²å×ù±äÁ¿£¬²¢ÇÒ½«²å×ù±äÁ¿ÃüÃûΪ greetingLabel£¬ÀàÐÍΪ UILabel¡£

ʵÏÖÂß¼­´úÂë

µã»÷ÊÓͼÖеİ´Å¥£¬Ëü»áÏòÊÓͼ¿ØÖÆÆ÷·¢ËÍ sayHello: ÏûÏ¢£¬Ö®ºó£¬ÊÓͼ¿ØÖÆÆ÷»áÈ¡µÃÎı¾ÊäÈë¿òÎÄ×ÖÄÚÈÝ£¬¸ù¾ÝÄÚÈÝÀ´¸üÐÂÓÃÀ´ÏÔʾÎʺòÓïµÄÎı¾±êÇ©µÄÄÚÈÝ¡£ÒÔÏÂÊÇRootViewController.mÎļþÖÐ sayHello: ·½·¨´úÂëµÄʵÏÖ£º

- (IBAction)sayHello:(id)sender {

// »ñÈ¡Îı¾ÊäÈë¿òÄÚÈÝ£¬²¢´æ´¢µ½±äÁ¿ÖÐ

NSString *nameString = nameTextField.text;

// ¼ì²éÊäÈëµÄÃû×ÖÊÇ·ñΪ¿Õ£¬Èç¹ûΪ¿Õ£¬µ¯³öÌáʾÐÅÏ¢

if (nameString.length == 0) {

UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"Ãû×Ö²»ÄÜΪ¿Õ" message:@"ÇëÊäÈëÃû×Öºó£¬
ÖØÐµã»÷°´Å¥¡£" delegate:nil cancelButtonTitle:@"È·¶¨" otherButtonTitles:nil, nil];
[alertView show];
[alertView release];
greetingLabel.text = @"";
return;
}
// ¼ì²éÃû×ÖÊDz»Êdz¬¹ý16¸ö×Ö·û£¬³¬¹ý16¸ö×Ö·û×Ô¶¯½Ø¶Ï
if (nameString.length > 16) {
nameString = [nameString substringToIndex:16];
}
// ¸ù¾ÝÊäÈëµÄÃû×Ö£¬Éú³ÉÎʺòÓï
NSString *greeting = [NSString stringWithFormat:@"ÄãºÃ£¬%@!", nameString];
// ÏÔʾÎʺòÓï
greetingLabel.text = greeting;
}

¶ÔÓÚÕâ¸ö·½·¨Óм¸µã²¹³ä˵Ã÷£º

1.UIAlertViewÊÇרÃÅÓÃÀ´ÏÔʾÏûÏ¢Ìáʾ¶Ô»°¿ò

2.stringWithFormat:·½·¨·û´®°´ÕÕ¸ñʽ»¯×Ö·û´®ËùÖ¸¶¨µÄ¸ñʽ´´½¨Ò»¸öÐÂ×Ö·û´®¡£%@±íÃ÷´Ë´¦Ó¦¸ÃʹÓÃÒ»¸ö×Ö·û´®¶ÔÏóÀ´´úÌæ¡£

Òþ²Ø¼üÅÌ

±àÒë²¢ÔËÐÐÓ¦ÓóÌÐò¡£ÔÚÎı¾¿òÖÐÊäÈë¡°Jim¡±£¬µã»÷°´¼üºó£¬±êÇ©ÏÔʾ¡°ÄãºÃ, Jim!¡± ¡£µ«ÊÇÑ¡ÔñÎı¾×ֶνøÐÐÊäÈ룬Äú»á·¢ÏÖÄúûÓа취±íʾÒÑÍê³ÉÊäÈ룬ҲûÓа취Ïû³ý¼üÅÌ¡£ÔÚiPhoneÓ¦ÓóÌÐòÖУ¬µ±Ò»¸öÔÊÐíÎı¾ÊäÈëµÄÔªËØ±ä³ÉµÚÒ»ÏìÓ¦Õßʱ£¬¼üÅ̾ͻá×Ô¶¯ÏÔʾ³öÀ´£¬¶øµ±¸ÃÔªËØ²»ÔÙ´¦ÓÚµÚÒ»ÏìÓ¦Õß״̬£¬¼üÅ̾ͻáÏûʧ¡£ÎÒÃDz»ÄÜÖ±½ÓÏò¼üÅÌ·¢ËÍÏûÏ¢£¬µ«ÊÇ¿ÉÒÔÇл»Îı¾ÊäÈëÔªËØµÄµÚÒ»ÏìÓ¦Õß״̬£¬ÀûÓøòÙ×÷µÄ¸½¼ÓЧ¹ûÀ´ÏÔʾ»òÏû³ý¼üÅÌ¡£ÔÚÓ¦ÓóÌÐòÖУ¬µ±Óû§µã»÷Îı¾×Ö¶Îʱ£¬¸Ã¿Ø¼þ¾Í»á±ä³ÉµÚÒ»ÏìÓ¦Õߣ¬Òò´Ë¼üÅ̾ͻáÏÔʾ³öÀ´¡£¶øµ±Óû§µã»÷¼üÅÌÖеÄDone°´¼üʱ£¬Ï£Íû¼üÅÌÏûʧ¡£

UITextFieldDelegateЭÒé°üº¬Ò»¸ötextFieldShouldReturn:·½·¨£¬Ò»µ©Óû§µã»÷Return°´¼ü£¬Îı¾×ֶξͻáµ÷Óø÷½·¨£¨ºÍ°´¼üµÄ±êÌâÎ޹أ©¡£µ«½«ÊÓͼ¿ØÖÆÆ÷ÉèÖóÉÎı¾ÊäÈë¿ò£¨UITextField£©µÄίÍÐ(Delegate)£¬²Å¿ÉÒÔʵÏָ÷½·¨£¬ÔÚ·½·¨ÖÐÏòÎı¾×ֶη¢ËÍresignFirstResponderÏûÏ¢£¬Õâ¸öÏûÏ¢µÄ¸½¼ÓЧ¹û»áÈüüÅÌÏûʧ¡£

ͨ¹ýÒÔϲ½ÖèÉèÖÃÎı¾ÊäÈë¿òµÄίÍУ¨delegate£©Á¬½Ó£º

1.ÔÚXcodeÖУ¬Ñ¡ÔñÊÓͼ¿ØÖÆÆ÷¶ÔÓ¦µÄNibÎļþ£¨RootViewController.xib£©

2.°´×¡Control¼ü£¬µã»÷Îı¾ÊäÈë¿ò

3.ÔÚµ¯³öµÄ°ë͸Ã÷Ãæ°åÖУ¬Ñ¡ÖÐ delegate ºóÃæµÄÔ²µã£¬²¢Í϶¯µ½ File's Owner

½ÓÏÂÀ´£¬À´ÊµÏÖ½«RootViewController×÷ΪÎı¾ÊäÈë¿ònameTextFieldµÄίÍУ¨delegate£©

ÔÚÊÓͼ¿ØÖÆÆ÷µÄÍ·Îļþ£¨RootViewController.h£©ÖУ¬ÔÚUIViewControllerºóÃæÌí¼Ó<UITextFieldDelegate>£º

@interface RootViewController : UIViewController<UITextFieldDelegate>   {

Õâ¸öÉêÃ÷±íʾÊÓͼ¿ØÖÆÆ÷RootViewController½«Ö§³ÖUITextFieldDelegateЭÒé

ÔÚÊÓͼ¿ØÖÆÆ÷µÄʵÏÖÎļþ£¨RootViewController.m£©£¬ÊµÏÖ textFieldShouldReturn: ·½·¨£º

- (BOOL)textFieldShouldReturn:(UITextField *)textField {

if (nameTextField == textField) {

[nameTextField resignFirstResponder];

}

return YES;

}

ÒòΪÕâ¸öÓ¦ÓóÌÐòÖ»ÓÐÒ»¸öÎı¾ÊäÈë¿ò£¬ËùÒÔÆäʵ²»ÐèÒª°üº¬nameTextField == textField¼ì²é¡£²»¹ýÓÐЩʱºò£¬¶ÔÏó¿ÉÄܻᱻÉèÖóɶà¸öÏàͬÀàÐ͵ĶÔÏóµÄίÍУ¬Õâʱºò¾ÍÐèÒªÀ´Çø·ÖÕâЩ¶ÔÏó¡£

ÖÁ´ËÎÒÃÇÒѾ­¿ª·¢Íê³ÉÁËÕû¸öÓ¦ÓóÌÐò¡£½ÓÏÂÀ´½«¶ÔËü½øÐвâÊÔ¡£

²âÊÔ

Õâ¸öÓ¦ÓóÌÐòÏà¶Ô¼òµ¥£¬ÎÒÃÇÉè¼Æ¼¸¸ö²âÊÔ³¡¾°£º

1.ÊäÈëÕý³£µÄÃû×Ö£¬ÀýÈç¡°±¦Óñ¡±£¬È»ºóµã»÷°´Å¥£¬¿´¿´ÊDz»ÊÇ»áÏÔʾ¡°ÄãºÃ£¬±¦Óñ!¡±

2.²»ÊäÈëÈκÎÃû×Ö£¬µã»÷°´Å¥£¬¿´¿´ÊDz»ÊÇ»áÓÐÌáʾÐÅÏ¢£¬ÒªÇóÊäÈëÃû×Ö¡£

3.·Ö±ðÊäÈë16¸ö¡¢17¸ö¡¢20¸ö×Ö·ûµÄÃû×Ö£¬¿´¿´Ãû×ÖÊDz»ÊÇ×î¶àÖ»ÄÜÏÔʾǰ16¸ö×Ö·û

4.µã»÷Îı¾ÊäÈë¿ò£¬ÏÔʾ¼üÅÌ£¬µã»÷¼üÅÌÉϵÄDone°´Å¥£¬¿´¼üÅÌÊDz»ÊÇ»áÒþ²Ø

5.Õë¶ÔÕâ¸ö²âÊÔ³¡¾°£¬ÖðÒ»×öһϹ¦ÄܵIJâÊÔ£¬¿´ÆðÀ´½á¹ûºÍÎÒÃÇÔ¤ÆÚµÄÍêȫһÑù

С½á

ͨ¹ýÕâÑùÒ»¸ö¼òµ¥µÄÏîÄ¿£¬Á˽âÒÔÏÂ֪ʶµã£º

1.iOS¿ª·¢³£ÓõÄһЩÉè¼ÆÄ£Ê½

2.iPhone³ÌÐòµÄÆô¶¯¹ý³Ì

3.ÊÓͼ¿ØÖÆÆ÷ºÍNibÎļþÈçºÎ½¨Á¢Á¬½Ó

4.ÕâЩ֪ʶ¶ÔÓÚiPhone¿ª·¢ºÍiOS¿ª·¢À´Ëµ£¬¶¼Êǻᾭ³£Óõ½µÄ֪ʶ¡£

   
2560 ´Îä¯ÀÀ       30
 
Ïà¹ØÎÄÕÂ

ÊÖ»úÈí¼þ²âÊÔÓÃÀýÉè¼ÆÊµ¼ù
ÊÖ»ú¿Í»§¶ËUI²âÊÔ·ÖÎö
iPhoneÏûÏ¢ÍÆËÍ»úÖÆÊµÏÖÓë̽ÌÖ
AndroidÊÖ»ú¿ª·¢£¨Ò»£©
 
Ïà¹ØÎĵµ

Android_UI¹Ù·½Éè¼Æ½Ì³Ì
ÊÖ»ú¿ª·¢Æ½Ì¨½éÉÜ
androidÅÄÕÕ¼°ÉÏ´«¹¦ÄÜ
Android½²ÒåÖÇÄÜÊÖ»ú¿ª·¢
Ïà¹Ø¿Î³Ì

Android¸ß¼¶Òƶ¯Ó¦ÓóÌÐò
Androidϵͳ¿ª·¢
AndroidÓ¦Óÿª·¢
ÊÖ»úÈí¼þ²âÊÔ
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

androidÈË»ú½çÃæÖ¸ÄÏ
AndroidÊÖ»ú¿ª·¢£¨Ò»£©
AndroidÊÖ»ú¿ª·¢£¨¶þ£©
AndroidÊÖ»ú¿ª·¢£¨Èý£©
AndroidÊÖ»ú¿ª·¢£¨ËÄ£©
iPhoneÏûÏ¢ÍÆËÍ»úÖÆÊµÏÖ̽ÌÖ
ÊÖ»úÈí¼þ²âÊÔÓÃÀýÉè¼ÆÊµ¼ù
ÊÖ»ú¿Í»§¶ËUI²âÊÔ·ÖÎö
ÊÖ»úÈí¼þ×Ô¶¯»¯²âÊÔÑо¿±¨¸æ


Android¸ß¼¶Òƶ¯Ó¦ÓóÌÐò
AndroidÓ¦Óÿª·¢
Androidϵͳ¿ª·¢
ÊÖ»úÈí¼þ²âÊÔ
ǶÈëʽÈí¼þ²âÊÔ
AndroidÈí¡¢Ó²¡¢ÔÆÕûºÏ


ÁìÏÈIT¹«Ë¾ android¿ª·¢Æ½Ì¨×î¼Ñʵ¼ù
±±¾© Android¿ª·¢¼¼Êõ½ø½×
ijÐÂÄÜÔ´ÁìÓòÆóÒµ Android¿ª·¢¼¼Êõ
ijº½Ì칫˾ Android¡¢IOSÓ¦ÓÃÈí¼þ¿ª·¢
°¢¶û¿¨ÌØ LinuxÄÚºËÇý¶¯
°¬Ä¬Éú ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ
Î÷ÃÅ×Ó Ç¶Èëʽ¼Ü¹¹Éè¼Æ