操作栏支持库无法正常工作

时间:2013-08-28 12:41:20

标签: android android-actionbar android-actionbar-compat

我使用操作栏支持库开发了一个示例应用程序。但是在OS版本4.0.4的设备中,它并没有像预期的那样出现。请查看截图。

以下屏幕截图取自操作系统版本2.3.3的设备

enter image description here

以下屏幕截图取自操作系统版本4.0.4的设备。在这个菜单中,菜单选项位于屏幕中间,预计将位于底部。

enter image description here

对此有何想法?

这是活动。

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"/>

0 个答案:

没有答案