Android 操作栏支持库工作不正常
我已经使用操作栏支持库开发了一个示例应用程序。但在操作系统版本为4.0.4的设备中,它并不像预期的那样出现。请查看屏幕截图 以下屏幕截图取自操作系统版本2.3.3的设备 下面的屏幕截图取自操作系统版本为4.0.4的设备。在这个菜单中,菜单选项出现在屏幕的中间,预计会出现在底部 你知道吗 这里是活动Android 操作栏支持库工作不正常,android,android-actionbar,android-actionbar-compat,Android,Android Actionbar,Android Actionbar Compat,我已经使用操作栏支持库开发了一个示例应用程序。但在操作系统版本为4.0.4的设备中,它并不像预期的那样出现。请查看屏幕截图 以下屏幕截图取自操作系统版本2.3.3的设备 下面的屏幕截图取自操作系统版本为4.0.4的设备。在这个菜单中,菜单选项出现在屏幕的中间,预计会出现在底部 你知道吗 这里是活动 public class DropDownActionBar extends ActionBarActivity implements OnNavigationListener { private
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"/>
您能分享一些代码(XML布局、类)吗?您想将操作栏放在屏幕的底部或顶部吗?标准的方式是顶部。@YoannHercouet,我只想放在底部。你可以看看SplitActionBar:@YoannHercouet,我也一样。我担心的是,它适用于除ICS 4.0.4版本以外的所有设备。