AndroidûÓÐÏñÆ»¹û¿ª·¢ÄÇÑù¹¦ÄÜÇ¿´óµÄ½çÃæ¿ª·¢¹¤¾ß£¬±¾ÉíADT²å¼þÌṩµÄ½çÃæ±à¼ÄÜÁ¦ÓÐÏÞ£¬Ã»°ì·¨¿Ì»ËùÓеĽçÃæÇé¿ö£»AndroidµÄ½çÃæxml´úÂë¿ÉÒÔ½øÐÐÈ˹¤Ð޸쬶øIphoneµÄÈ«²¿ÔÚͼÐνçÃæÉÏÍ϶¯Íê³É£¬¿ÉûÌṩÈκη½Ê½µÄ´úÂë¼¶Ð޸ġ£AndroidµÄUIÉè¼Æ¿ª·¢¹ý³Ì·Ç³£·±Ëö£¬ÈÝÒ׳ö´í£¬ÐèÒªºÜ³¤Ê±¼äµ÷½Ú½çÃæÏ¸½Ú£¬¿ª·¢¹ýAndroidÓ¦ÓõÄÈ˿϶¨ÉîÓÐͬ¸Ð¡£Óü¸ÄêǰµÄÍøÒ³Éè¼ÆÀ´´ò¸ö±È·½£¬¿ª·¢IphoneµÄÈí¼þ½çÃæ¾ÍºÃ±ÈÊÇÓÃFrontpageŪµã¿Ø¼þÍϳÉÒ»ÕÅÒ³Ãæ£¬¶ø¿ª·¢Android¸ü½Ó½üÓÚ±Õ×ÅÑÛ¾¦ÔÚNotepadÀïÒ»ÐÐÐеÄдhtml±êÇ©¡£ÎªÁËʹ¿ª·¢AndroidÓ¦Óøü¼Ó¼ò±ã¿ì½Ý£¬¼õÉÙ´úÂëÈßÓ࣬ÔöÇ¿Èí¼þÖÊÁ¿£¬ÔÚ×ÉѯÐÐÇéµÄ¿ª·¢ÉÏÎÒÃÇ´óÁ¿Ê¹ÓÃÁËÄ£°å»¯µÄÒ³Ãæ¡£
˼·ºÜ¼òµ¥£º½«Èí¼þÀïÓõ½µÄ´óÁ¿Öظ´µÄÒ³Ãæ²¼¾Ö³éÏó³öÀ´£¬±àд³ÉÒ»¸ö³éÏóµÄActivityÀ࣬ȻºóÔÚʵÏÖ¾ßÌåÒ³ÃæÊ±¼Ì³ÐËü£¬²¢ÇÒÔÚÖ÷ÄÚÈݿհ×ÇøÌîÈëÐèÒªµÄÄÚÈÝ¡£
ÀýÈçÔÚ×î½ü¿ª·¢µÄÒ»¿î×ÊѶÀàÓ¦ÓÃÖУ¬Ã¿ÕÅÒ³ÃæÉÏÃæ¶¼ÓÐÒ»¸ö¶¥À¸£¬ÉÏÃæÓÐÁ½¸ö°´Å¥£¬°´Å¥ÖмäÊÇÒ»ÐбêÌâÎÄ×Ö¡£°´Å¥ÉϵÄÎÄ×Ö¼°µã»÷ºóµÄ¹¦ÄÜÔÚÿ¸öÒ³ÃæÖпÉÄܻᶼ²»Ïàͬ¡£ÈçÏÂͼËùʾµÄ¡£

Ãæ¶ÔÕâÑùÒ»¸öÒ³ÃæµÄÐèÇó£¬ÎÒÃÇ¿ÉÒÔÉè¼Æ³öÒ»¸ö»ù±¾µÄÒ³ÃæÄ£°åAbstractAc1£¬´úÂëÈçÏÂËùʾ¡£
/** * ͨÓÃÒ³ÃæÄ£°å1£ºº¬ÉÏÀ¸£¬°üÀ¨×óÓÒÁ½¸ö°´Å¥£¬Ò»¸ötitleÎÄ×ÖÇø * @author zhe.yangz */ public class AbstractAc1 extends BaseActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.abac_1); } /** * ÉèÖÃÖ÷ÄÚÈÝÇøÓòµÄlayoutRes * @param layoutResId */ public void alabSetContentView(int layoutResId) { LinearLayout llContent = (LinearLayout) findViewById(R.id.llContent1); LayoutInflater inflater = (LayoutInflater) getSystemService( Context.LAYOUT_INFLATER_SERVICE); View v = inflater.inflate(layoutResId, null); llContent.addView(v); } /** * Òþ²Ø×ó²à°´Å¥ */ public void alabHideButtonLeft(boolean bSetHide) { Button bt = alabGetButtonLeft(); if (null != bt) { if (bSetHide) bt.setVisibility(View.INVISIBLE); else bt.setVisibility(View.VISIBLE); } } /** * Òþ²ØÓҲఴť */ public void alabHideButtonRight(boolean bSetHide) { Button bt = alabGetButtonRight(); if (null != bt) { if (bSetHide) bt.setVisibility(View.INVISIBLE); else bt.setVisibility(View.VISIBLE); } } /** * µÃµ½Ä£°åÉϵ¼º½À¸µÄ×ó²à°´Å¥£¬Ò»°ãΪ[·µ»Ø] * @return ³É¹¦Ôò·µ»ØButton¶ÔÏó£¬Ê§°ÜÔò·µ»Ønull¡£ */ public Button alabGetButtonLeft() { return (Button) findViewById(R.id.btBack1); } /** * µÃµ½Ä£°åÉϵ¼º½À¸µÄÓҲఴť£¬Ò»°ãΪ[Ë¢ÐÂ] * @return ³É¹¦Ôò·µ»ØButton¶ÔÏó£¬Ê§°ÜÔò·µ»Ønull¡£ */ public Button alabGetButtonRight() { return (Button) findViewById(R.id.btRefresh1); } /** * ÉèÖÃÄ£°åÉϵ¼º½À¸ÖмäµÄ±êÌâÎÄ×Ö * @param titleText * @return Ð޸ijɹ¦·µ»Øtrue£¬Ê§°Ü·µ»Øfalse */ public boolean alabSetBarTitleText(String titleText) { TextView tv = (TextView) findViewById(R.id.txBarTitle1); if (null != tv) { tv.setText(titleText); return true; } return false; } } |
ÎÒÃÇ´´½¨ÁËÒ»ÕÅÄ£°åÒ³Ãæ£¬È»ºóÔÚÓ¦ÓÃÖеÄʵ¼ÊÒ³Ãæ¼Ì³ÐÓÚËü¡£ÕâÑù£¬Ã¿Õż̳еÄÒ³Ãæ¶¼¿ÉÒÔÓµÓÐÀàËÆµÄ¶¥À¸²¼¾Ö£¬²¢ÇÒ´úÂë¼ò½à¡£ÏÂÃæ¾ÍÊǼ̳еÄÀý×Ó¡£
/** * ÑùÀýÒ³Ãæ * @author zhe.yangz */ public class HomeActivity extends AbstractAc1 { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); alabSetContentView(R.layout.ac_home); setTopBarAndAction(); } private void setTopBarAndAction() { alabSetBarTitleText("TEST HOME"); // ÉèÖÃTitle±êÌâ alabGetButtonLeft().setText("LeftBt"); // ÉèÖÃ×ó°´Å¥ÉϵÄÎÄ×Ö alabGetButtonRight().setText("RightBt"); // ÉèÖÃÓÒ°´Å¥ÉϵÄÎÄ×Ö alabGetButtonRight().setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // °´Å¥Ö´ÐÐʼþ // ... } }); } } |
¾ÍÍê³ÉÁËÒ»ÕžßÓÐÈç϶¥À¸Ð§¹ûµÄÒ³Ãæ£¬Ò³ÃæµÄ±³¾°¡¢°´Å¥ÅäÉ«µÈЧ¹ûÔÚAbstractAc1Öж¨Òå¡£

alabSetContentView()ÊÇÔÚAbstractAc1Öж¨ÒåµÄ·½·¨£¬ÔÚÑÜÉúÀàÖе÷Óø÷½·¨£¬´«ÈëÒ»¸ö½çÃæ¶¨Òåxml£¬·½·¨ÖÐʵÏÖÁËʹÓÃLayoutInflaterÉú³Éview£¬Ê¹µÃÕâ¸öÒ³ÃæÖж¨ÒåµÄÖ÷ÄÚÈÝÇøµÄ½çÃæxml»áºÍÔÀ´AbstractAc1µÄ½çÃæxmlºÏ²¢ÔÚÒ»Æð£¬³ÉΪһ¸öÍêÕûµÄÒ³Ãæ¡£ÓÐЩÇé¿öÏ£¬×óÓÒ°´Å¥¿ÉÒÔµ¥¶À»òÒ»ÆðÒþ²Ø£¬¿ÉÒÔʹÓÃAbstractAc1Öж¨ÒåµÄalabHideButtonLeftºÍalabHideButtonRight½øÐÐÉèÖá£
ʹÓÃÄ£°å»¯·½Ê½¿ª·¢½çÃæ£¬Ä¿Ç°ÎÒÃÇ¿ª·¢µÄAndroidÓ¦ÓÃÖеÄActivityµÄ²ã´Î½á¹¹´óÖÂÈçÏ¡£

ÕâÑùÄ£°å»¯µÄÒ³ÃæÌ½Ë÷µÄʵ¼ù±»ÓÃÔÚÎÒÃÇĿǰAndroidÓ¦Óÿª·¢ÖС£´óÖ¹À¼ÆÒ»Ï£¬½çÃæ´úÂë±ÈÔÀ´¼õÉÙ40%£¬¼õÉÙÁËÈßÓ࣬Ҳ¼ä½ÓÌá¸ßÁËÈí¼þÖÊÁ¿ºÍ¿Éά»¤ÐÔ£¬¼«´óÌáÉýÁËÒµÎñÐèÇó±ä»¯´øÀ´µÄ¿ìËÙ·´Ó¦ÄÜÁ¦¡£½ÓÏÂÈ¥ÎÒÃÇÏ£ÍûÄܹ»¼ÌÐøÉîÈë̽Ë÷£¬ÕÒµ½¸ü¶àµÄÌáÉýÒÆ¶¯Èí¼þ½çÃæ¿ª·¢Ð§ÂʺÍÖÊÁ¿µÄ·½·¨£¬Ò²Ï£ÍûÓкÃÏë·¨µÄͬѧºÍÎÒÃÇÉîÈë½»Á÷£¬¹²Í¬Ì½ÌÖ£¬²©²ÉÖÚ³¤¡£
²¹³ä£º
ÎÄÖÐÄ£°å1ÖÐËùÓõIJ¼¾Ö¶¨ÒåÎļþabac_1.xmlÍü¸ø³öÁË£¬´úÂëÈçÏ£¬
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/section_bgcolor"> <!-- ¶¥À¸ --> <LinearLayout android:layout_width="fill_parent" android:layout_height="43dp" android:padding="5dp" android:background="@drawable/topbar_bg" android:orientation="horizontal" android:gravity="center" > <Button style="@style/AliBt" mce_style="@style/AliBt" android:id="@+id/btLeft" android:text="Left" /> <Spinner android:id="@+id/sp_HY" android:visibility="invisible" android:layout_width="0dp" android:layout_height="0dp"/> <TextView style="@style/AliBarTitle" mce_style="@style/AliBarTitle" android:id="@+id/txBarTitle1" android:text="" /> <Button style="@style/AliBt" mce_style="@style/AliBt" android:id="@+id/btRight" android:text="Right" /> </LinearLayout> <!-- Ö÷ÄÚÈÝ¿ò¼Ü --> <LinearLayout android:id="@+id/llContent1" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1"> </LinearLayout> </LinearLayout> |
|