我使用操作栏支持库开发了一个示例应用程序。但在操作系统版本为 4.0.4 的设备中,它并没有像预期的那样出现。请检查屏幕截图。
以下屏幕截图取自 OS 版本为 2.3.3 的设备
下面的屏幕截图取自操作系统版本 4.0.4 的设备。在此菜单选项出现在屏幕中间,预计将出现在底部。
对此有任何想法吗?
这里是活动。
public class DropDownActionBar extends ActionBarActivity implements OnNavigationListener {
private ActionBar mActionBar;
private TextView mTextView;
ShareActionProvider mShareActionProvider;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dropdown_actionbar_layout);
mTextView = (TextView)findViewById(R.id.dropITEM_tv);
mActionBar = getSupportActionBar();
mActionBar.setDisplayShowTitleEnabled(false);
mActionBar.setDisplayShowHomeEnabled(true);
mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
SpinnerAdapter mSpinnerAdapter = ArrayAdapter.createFromResource(getApplicationContext(),
R.array.action_list, android.R.layout.simple_dropdown_item_1line);
mActionBar.setListNavigationCallbacks(mSpinnerAdapter, this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.frag_action_bar_items, menu);
MenuItem mShareItem = menu.findItem(R.id.action_share_PIC);
mShareActionProvider = (ShareActionProvider)MenuItemCompat.getActionProvider(mShareItem);
mShareActionProvider.setShareIntent(getShareIntent());
return super.onCreateOptionsMenu(menu);
}
private Intent getShareIntent() {
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("image/*");
return intent;
}
public boolean onNavigationItemSelected(int pos, long itemID) {
String[] res = getResources().getStringArray(R.array.action_list);
Log.v("SELECTED_ITEM ", "ITEM " + pos);
mTextView.setText("Item " + res[pos]);
return true;
}
}
这里是 frag_action_bar_items 菜单布局。
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:actionbardemo="http://schemas.android.com/apk/res-auto" >
<item
android:id="@+id/action_itemsearch"
actionbardemo:actionViewClass="android.support.v7.widget.SearchView"
actionbardemo:showAsAction="always|collapseActionView"
android:icon="@android:drawable/ic_search_category_default"
android:title="Search"/>
<item
android:id="@+id/action_share_PIC"
actionbardemo:actionProviderClass="android.support.v7.widget.ShareActionProvider"
actionbardemo:showAsAction="ifRoom"
android:title="Share Pic"/>
<item
android:id="@+id/action_staron"
actionbardemo:showAsAction="ifRoom"
android:icon="@android:drawable/star_big_on"
android:orderInCategory="100"
android:title="@string/action_star_on"/>
<item
android:id="@+id/action_staroff"
actionbardemo:showAsAction="ifRoom"
android:icon="@android:drawable/star_big_off"
android:orderInCategory="100"
android:title="@string/action_star_off"/>