Android ActionBar项目与文本只

我想将一个项目放在只有文本的操作栏中。 我正在使用ActionBarSherlock。 我怎样才能做到这一点。 一个是用文本定义一个图标。 我不喜欢这样做。 是否有可能从我的string资源有一个文本项目?

Solutions Collecting From Web of "Android ActionBar项目与文本只"

只是不要定义

android:icon 

该项目的menu.xml中的字段。

只是想通了,确保添加android:showAsAction =“总是”

 <item android:id="@+id/menu_item" android:showAsAction="always" android:title="@string/menu_title" /> 

为了将来的参考,我发现必须在http://schemas.android.com/apk/res/android命名空间和http://schemas.android.com/apk/res-auto命名空间中定义showAsAction属性,以提供与不同Android版本的兼容性。 因此,你的menu.xml文件应该如下所示:

 <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context="net.taptools.android.sportshistory.PlayerProfileActivity" > <item android:id="@+id/action_settings" android:title="Statistics" app:showAsAction="always" android:showAsAction="always"/> </menu> 

如果你想要它是一个button,你可以创build一个菜单:

 <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context="net.taptools.android.sportshistory.PlayerProfileActivity" > <item android:id="@+id/action_settings" android:title="Statistics" app:showAsAction="always" android:showAsAction="always"/> </menu> 

但是,如果你只需要一个TextView你可以使用:

 @Override public boolean onCreateOptionsMenu(Menu menu) { TextView tv = new TextView(this); tv.setText(getString(R.string.matchmacking)+" "); tv.setTextColor(getResources().getColor(R.color.WHITE)); tv.setOnClickListener(this); tv.setPadding(5, 0, 5, 0); tv.setTypeface(null, Typeface.BOLD); tv.setTextSize(14); menu.add(0, FILTER_ID, 1, R.string.matchmacking).setActionView(tv).setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); } 

这只是一个TextView