android bar sherlock添加按钮

时间:2012-02-17 04:35:45

标签: android actionbarsherlock

再次,我在这里使用动作栏sherlock失去了...似乎我添加的按钮根本没有出现。这就是我已经做过的事情

在我的清单

<activity android:name=".RecipeBookList"  android:theme="@style/SherlockCustom"></activity>

和我的styles.xml

<style name="SherlockCustom" parent="@style/Theme.Sherlock.Light">
        <item name="abHeight">25dip</item>
        <item name="abBackground">#ffffff</item>
        <item name="abDisplayOptions">useLogo|showHome|homeAsUp|showTitle</item>
    </style>

和我的RecipeBookList.java

public class RecipeBookList extends FragmentActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.recipebooklist);

          GridView gridview = (GridView) findViewById(R.id.gridview);
          gridview.setAdapter(new ImageAdapter(this));

          gridview.setOnItemClickListener(new OnItemClickListener() {
              public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
                  //Toast.makeText(RecipeBookList.this, "" + position, Toast.LENGTH_SHORT).show();
                  displayRecipeList(""+position);
              }
          });
       }

       @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.mainmenu, menu);
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        Toast.makeText(this, "Just a test", Toast.LENGTH_SHORT).show();
        return true;
    }

在我的mainmenu.xml中找到了

<item android:id="@+id/preferences" android:title="Search" android:showAsAction="always|withText" android:icon="@drawable/ab_search"></item>

但搜索按钮根本没有出现在操作栏中..实际上它根本不会出现在任何地方。我哪里出错了?

2 个答案:

答案 0 :(得分:0)

您需要使用此处提供的片段支持包:http://beta.abs.io/ 然后修复导入以使用ActionBarSherlock equivelants,并使用getSupportMenuInflater()而不是getMenuInflater()

编辑:应该提一下,如果您使用的是ABS4。

答案 1 :(得分:0)

尝试使用此

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    //Used to put dark icons on light action bar

    menu.add("Search")
        .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);

    return true;
}   

此外,您在他们的页面和APK中有样本,您可以在此处查看其代码: https://github.com/JakeWharton/ActionBarSherlock/blob/master/samples/demos/src/com/actionbarsherlock/sample/demos/ActionItems.java