ActionBar初试

Sytle.xml

<style name="my_theme" parent="android:Theme.Holo.Light">
    <item name="android:actionMenuTextColor">#FF0000</item>

    <item name="android:actionBarStyle">@style/my_actionbar_style</item>
</style>

<style name="my_actionbar_style" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:background">#FFFF00</item>
</style>

Activity

package com.example.uidemo;

import java.util.ArrayList; import java.util.HashMap; import
java.util.List; import java.util.Map;

import android.os.Bundle; import android.app.ActionBar; import
android.app.ActionBar.OnNavigationListener; import
android.app.Activity; import android.content.Intent; import
android.view.Menu; import android.view.MenuItem; import
android.widget.ShareActionProvider; import
android.widget.SimpleAdapter; import android.widget.SpinnerAdapter;
import android.widget.Toast;

public class MainActivity extends Activity {    private
ShareActionProvider mShareActionProvider;   private SpinnerAdapter
adapter;    private List<Map<String, String>> list;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        list=new ArrayList<Map<String,String>>();
        for(int i=0;i<3;i++){
            Map<String, String> map=new HashMap<String, String>();
            map.put("text", "text"+i);
            list.add(map);
        }
        adapter=new SimpleAdapter(this,list,R.layout.item,new String[]{"text"},new int[]{R.id.text});
        ActionBar actionBar=getActionBar();
        actionBar.setDisplayHomeAsUpEnabled(true);
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
        actionBar.setListNavigationCallbacks(adapter, new OnNavigationListener() {
                        @Override           public boolean onNavigationItemSelected(int itemPosition, long itemId) {
                showTost(itemPosition);
                return false;           }       });
    }
    private void showTost(int itemPosition) {       String str=list.get(itemPosition).get("text");      Toast.makeText(this,
str,1000).show();   }
    @Override
    protected void onStart() {

        super.onStart();
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        MenuItem item = menu.findItem(R.id.menu_share);
        mShareActionProvider= (ShareActionProvider) item.getActionProvider();
        Intent sendIntent = new Intent(Intent.ACTION_SEND);
        sendIntent.putExtra(Intent.EXTRA_TEXT, "Test Text");
        sendIntent.setType("text/plain");  
        setShareIntent(sendIntent);
        return true;
    }
    private void setShareIntent(Intent shareIntent) {
        if (mShareActionProvider != null) {
            mShareActionProvider.setShareIntent(shareIntent);
        }
    }     }

menu


<item
    android:id="@+id/item1"
    android:orderInCategory="1"
    android:showAsAction="ifRoom|withText"
    android:title="save"/>
<item
    android:id="@+id/item2"
    android:orderInCategory="2"
    android:showAsAction="ifRoom|withText"
    android:title="edit"/>
<item
    android:id="@+id/item3"
    android:orderInCategory="3"
    android:showAsAction="ifRoom|withText"
    android:title="about"/>
<item android:id="@+id/menu_share"

      android:title="share"

      android:showAsAction="ifRoom"

      android:actionProviderClass="android.widget.ShareActionProvider" />
<item android:id="@+id/menu_search"

      android:title="menu_search"


      android:showAsAction="ifRoom|collapseActionView"

      android:actionViewClass="android.widget.SearchView" />
<item
    android:id="@+id/item4"
    android:orderInCategory="4"
    android:showAsAction="ifRoom|withText"
    android:title="help"/>
<item
    android:id="@+id/item5"
    android:orderInCategory="5"
     android:showAsAction="never"
    android:title="file"/>
<item
    android:id="@+id/item6"
    android:orderInCategory="6"
     android:showAsAction="never"
    android:title="run"/>
<item
    android:id="@+id/item7"
    android:orderInCategory="7"
    android:showAsAction="never"
    android:title="source"/>
<item
    android:id="@+id/item8"
    android:orderInCategory="8"
     android:showAsAction="never"
    android:title="navigate"/>
<item
    android:id="@+id/item9"
    android:orderInCategory="9"
     android:showAsAction="never"
    android:title="search"/>
<item
    android:id="@+id/item10"
    android:orderInCategory="10"
     android:showAsAction="never"
    android:title="project"/>
<item
    android:id="@+id/item11"
    android:orderInCategory="11"
     android:showAsAction="never"
    android:title="refactor"/>
<item
    android:id="@+id/item12"
    android:orderInCategory="12"
     android:showAsAction="never"
    android:title="window"/>
<item
    android:id="@+id/item13"
    android:orderInCategory="13"
     android:showAsAction="never"
    android:title="help"/>

注意事项

如果有手机实体菜单键,将不会显示溢出菜单

你可能感兴趣的:(Actionbar)