ÀÖÓãµç¾º

½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

AndroidÅàѵʵս½Ì³Ì֮ʹÓÃActionBar´î½¨Android UI¿ò¼Ü

¸üÐÂʱ¼ä:2015Äê12ÔÂ28ÈÕ14ʱ47·Ö À´Ô´:ÀÖÓã²¥¿ÍAndroidÅàѵѧԺ ä¯ÀÀ´ÎÊý:

ʹÓÃActionBar´î½¨Android UI¿ò¼Ü

ʲôÊÇActionBar?

ActionBar×îÔçÆðÔ´ÓÚAndroid 3.0ϵͳ, ×î³õÊÇ»ùÓÚÆ½°åµçÄÔÉè¼ÆµÄ¶¥À¸²Ù×÷Ä£¿é, ºóÀ´Android 4.0ϵͳ½«´Ë²Ù×÷Ä£¿éÍÆ¹ãµÄÆÕͨµÄÊÖ»úÆÁÄ», Ö¼ÔÚΪËùÓÐAndroidÓû§ÌṩͳһµÄ½»»¥ÌåÑé¡£
 
ActionBarÖ÷Òª·ÖÈçϼ¸¸ö²¿·Ö:
 
1. ±êÌâÇøÓò
´ËÇøÓòλÓÚ¶¥À¸×ó²à, ÓÃÀ´Õ¹Ê¾³ÌÐòͼ±ê, ±êÌâ, ¼°·µ»Ø°´¼ü¡£
 
2. ²Ù×÷ÇøÓò
´ËÇøÓòλÓÚ¶¥À¸ÓÒ²à, ÓÃÀ´Õ¹Ê¾²Ù×÷Ñ¡Ïî¼°²Ëµ¥Áбí¡£
 
¾ßÌå¿É²Î¿¼ÏÂͼ:
 
           
    ͼ1-1 Actionbar¼ò½é
 

ʲôÊÇActionBarSherlock?

ÓÉÓÚActionBar ÆðÔ´ÓÚAndroid 3.0ϵͳ, ËùÒÔAndroid 2.xµÄϵͳÎÞ·¨Õý³£ÔËÐÐActionBarµÄËùÓй¦ÄÜ¡£ ÎÒÃÇ¿ÉÒÔʹÓõÚÈý·½¿ò¼ÜActionBarSherlockÀ´½â¾öÕâ¸öÎÊÌ⡣ʹÓÃÕâÖÖ¿ò¼ÜµÄºÃ´¦¾ÍÊÇ, AndroidÈκΰ汾¶¼¿ÉÒÔͳһActionBarµÄ±ê×¼Ñùʽ, ÎÞÐ迪·¢Õß×ö¹ý¶à¼æÈÝ¡£ÕâÊǹٷ½ÍøÖ·£ºhttp://actionbarsherlock.com¡£
 
 
 
 
 
 
 
 
 

°¸Àý·ÖÎö

½ÓÏÂÀ´£¬ ÎÒÃÇͨ¹ýÒ»¸ö¼òµ¥µÄ°¸Àý£¬À´Á˽âÒ»ÏÂActionBarSherlockµÄʹÓ÷½Ê½¡£

Ò»£® ÏÂÔØActionBarSherlock¹Ù·½SDK

µÇ¼¹Ù·½ÍøÖ·£ºhttp://actionbarsherlock.com ÏÂÔØSDK²¢½âѹ, ÈçͼËùʾ:
 
                                  ͼ1-2 ActionBarSherlock SDK½âѹ
 
ÆäÖУ¬actionbarsherlockÊÇÎÒÃÇҪʹÓõĵÚÈý·½¿âÎļþ£¬actionbarsherlock-samplesÊÇÀý×Ó³ÌÐò¡£
 

¶þ£® ´´½¨Demo³ÌÐò

ʹÓÃeclipse´´½¨AndroidÏîÄ¿MyActionBarDemo£¬²¢ÇÒÒýÈëÉÏÒ»²½ÏÂÔØµÄµÚÈý·½¿âÎļþactionbarsherlock£¬ ÈçÏÂͼËùʾ£º
 
ͼ1-3 MyActionBarDemo
 
ÓÒ¼üµ¥»÷ÏîÄ¿MyActionBarDemo£¬Ñ¡ÔñProperties£¬µ¯´°×ó²àÁбíÑ¡ÔñAndroid£¬µã»÷Add°´Å¥£¬Ñ¡Ôñactionbarsherlockºó£¬µã»÷È·¶¨¡£ÕâÑù£¬ÎÒÃÇ×Ô¼ºµÄÏîÄ¿MyActionBarDemo¾ÍºÍActionBarSherlock¹ØÁªÁËÆðÀ´£¬¿ÉÒÔÖ±½Óµ÷ÓÃActionBarSherlockÖеÄËùÓÐ×ÊÔ´ÎļþºÍAPIÁË¡£
 
ͼ1-4 ÒýÈëActionBarSherlock¿âÎļþ£¨1£©
 
ͼ1-5 ÒýÈëActionBarSherlock¿âÎļþ£¨2£©
 
×¢£ºÓÉÓÚactionbarsherlockµÄlibs°üÏÂÒѾ­ÓÐandroid-support-v4.jar£¬ÎªÁ˱ÜÃâjar°ü³åÍ»£¬ÎÒÃÇÐèÒª½«MyActionBarDemoÖÐlibsĿ¼ÏµÄandroid-support-v4.jarɾ³ýµô¡£
 

Èý£® ¿ìËÙ¿ªÊ¼

1. ÔÚAndroidManifest.xmlÖУ¬ÐÞ¸ÄÓ¦ÓóÌÐòµÄÖ÷Ì⣬¸ÄΪSherlockϵÄijÖÖÖ÷Ì⣬±ÈÈ磺@style/Theme.Sherlock.Light£¬±íʾÁÁÉ«·ç¸ñµÄÖ÷Ìâ¡£
 
 <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/Theme.Sherlock.Light" >
        <activity
            android:name="com.example.actionbardemo.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
 </application>
 
2. ÈÃMainActivity¼Ì³ÐSherlockActivity¡£
 
public class MainActivity extends SherlockActivity {
         @Override
         protected void onCreate(Bundle savedInstanceState) {
                  super.onCreate(savedInstanceState);
                  setContentView(R.layout.activity_main);
         }
}
 
3. ÔÚresĿ¼Ï£¬Ð½¨menuÎļþ¼Ð£¬ÔÚmenuÏÂн¨xmlÎļþ£¬ÃûΪmain.xml£¬ÎļþÄÚÈÝÈçÏÂËùʾ£º
 
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/action_1"
        android:showAsAction="always"
       android:icon="@drawable/ic_launcher"
        android:title="action_1"/>
</menu>
 
´ËxmlÎļþ¸ù±êÇ©ÊÇmenu£¬×Ó±êÇ©item±íʾһ¸ö²Ù×÷Ñ¡Ïî¡£itemÓм¸¸öÊôÐÔ£ºid±íʾitemµÄid±êʶ£»showAsAction±íʾitemµÄÕ¹ÏÖ·½Ê½£¬showAsAction=always±íʾitemһֱչʾÔÚactionbarµÄÌõÄ¿ÉÏ£»icon±íʾitemµÄͼ±ê£»title±íʾitemµÄ±êÌâ¡£
 
4. ÔÚMainActivityÖÐÖØÐ´onCreateOptionsMenuÕâ¸ö·½·¨¡£
 
@Override
public boolean onCreateOptionsMenu(Menu menu) {
         getSupportMenuInflater().inflate(R.menu.main, menu);
         return super.onCreateOptionsMenu(menu);
}
 
´Ë·½·¨¿ÉÒÔ½«ÃèÊöÎļþmain.xmlÌî³äµ½ActionBarµÄÌõÄ¿ÖС£
ÔËÐгÌÐò£¬¼´¿É·¢ÏÖÔÚActionBarµÄ²Ù×÷ÇøÓò£¬¶àÁËÒ»¸ö²Ù×÷Ñ¡ÏÈçͼËùʾ£º
 
 
 
 
ͼ1-6 ÏÔʾ²Ù×÷Ñ¡Ïî
 
 
5. ΪÁËÈòÙ×÷Ñ¡ÏîÏìÓ¦µã»÷ʼþ£¬¿ÉÒÔÔÚMainActivityÖÐÖØÐ´onOptionsItemSelected·½·¨¡£
 
@Override
public boolean onOptionsItemSelected(MenuItem item) {
         switch (item.getItemId()) {
         case R.id.action_1:
              Log.d("Test", "action 1 is clicked!");
              break;
         default:
         break;
         }
         return super.onOptionsItemSelected(item);
}
 
ÔÚÕâ¸ö·½·¨ÖУ¬¸ù¾ÝitemµÄidÀ´Çø·ÖÄÄÒ»¸öitem±»µã»÷£¬´Ó¶øÖ´ÐÐÏàÓ¦µÄ²Ù×÷¡£
 
 
 
 
 

ËÄ£® À©Õ¹¹¦ÄÜ

1. ΪÁËÔÚActionBarÖÐÏÔʾ×Ӳ˵¥¹¦ÄÜ£¬¿ÉÒÔÔÚmain.xmlÖÐ×·¼ÓÒ»¶Î´úÂ룺
 
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/action_1"
        android:icon="@drawable/ic_launcher"
        android:showAsAction="always"
        android:title="action_1"/>
    <item
        android:id="@+id/action_more"
        android:icon="@drawable/ic_launcher"
        android:showAsAction="always"
        android:title="action_more">
        <menu>
            <item
                android:id="@+id/action_2"
                android:showAsAction="always"
                android:title="action_2"/>
            <item
                android:id="@+id/action_3"
                android:showAsAction="always"
                android:title="action_3"/>
        </menu>
    </item>
</menu>
 
ÔËÐÐÏîÄ¿£¬µã»÷ÐÂÔöµÄitem£¬¿ÉµÃµ½ÈçÏÂЧ¹û£º
 
 
 
 
ͼ1-7 ActionBarµÄ×Ӳ˵¥
 
 
2. ActionBar»¹¿ÉÒÔ¶¯Ì¬Ð޸ıêÌ⣬logoͼ±ê£¬ÉèÖ÷µ»Ø°´Å¥µÈ¡£
 
private void updateActionBar() {
         ActionBar actionbar = getSupportActionBar();//»ñÈ¡actionbar¶ÔÏó
         actionbar.setTitle("×Ô¶¨Òå±êÌâ");//ÐÞ¸Äactionbar±êÌâ
         actionbar.setLogo(R.drawable.logo);//ÐÞ¸ÄactionbarµÄlogo
         actionbar.setDisplayHomeAsUpEnabled(true);//ÏÔʾ·µ»Ø°´¼ü
}
 
ͼ1-8 ×Ô¶¨Òåactionbar
 
×¢£º ·µ»Ø°´¼üµÄµã»÷ʼþÒ²ÊÇÔÚonOptionsItemSelectedÖнøÐв¶»ñ£¬Ö»²»¹ý²ÉÓÃϵͳĬÈÏid£ºandroid.R.id.home¡£
 

×ܽá

Ëæ×ÅAndroidϵͳµÄ·ÉËÙ·¢Õ¹£¬ActionBar»áÓ¦Óõ½Ô½À´Ô½¶àµÄÏîÄ¿µ±ÖУ¬±ÈÈç΢ÐŽüÆÚµÄ¼¸¸ö°æ±¾¶¼²ÉÓÃÁËActionBarµÄUI¿ò¼Ü¡£ÎªÁ˱£Ö¤2.x°æ±¾µÄ¼æÈÝ£¬ÎÒÃÇ¿ÉÒÔÖ±½ÓʹÓÃActionBarSherlockÕâ¸öÁ÷ÐеĵÚÈý·½SDK£¬ÆäAPIµÄµ÷Ó÷½Ê½¼¸ºõºÍAndroidÔ­ÉúActionBarµÄµ÷Ó÷½Ê½ÍêȫһÖ£¬¼«´ó½µµÍÁË¿ª·¢³É±¾£¬Ìá¸ßÁË¿ª·¢Ð§ÂÊ¡£


±¾ÎİæÈ¨¹éÀÖÓã²¥¿ÍAndroidÅàѵѧԺËùÓУ¬»¶Ó­×ªÔØ£¬×ªÔØÇë×¢Ã÷×÷Õß³ö´¦¡£Ð»Ð»£¡
×÷ÕߣºÀÖÓã²¥¿ÍAndroidÅàѵѧԺ
Ê×·¢£ºhttp://www.itcast.cn/android/

 
0 ·ÖÏíµ½£º
ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿