我最近從ActionBarSherlock切換到Android Support Library ActionBar,現在我在操作欄中的微調控制器的操作視圖上得到空值。無法使用支持庫獲取ActionBar MenuItem的操作視圖
下面的代碼由docs的建議:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.home_menu, menu);
MenuItem spinnerItem = menu.findItem(R.id.menuNavigateType);
View view = MenuItemCompat.getActionView(spinnerItem);// !! view is NULL !!
...
}
這裏的R.menu.home_menu
:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:myapp="http://schemas.android.com/apk/res-auto">
...
<item
android:id="@+id/menuNavigateType"
myapp:showAsAction="always"
myapp:actionViewClass="android.support.v7.widget.Spinner" />
...
</menu>
如何讓我的行動有何看法?
謝謝。
什麼是你的微調xml? – user2511882
微調控件在我上面公佈的xml中被定義爲一個actionViewClass。 – aez
如果有任何微調,U可能會想要在android.support.v7.widget包中查找。沒有Spinner類,所以你需要定義類android.widget.Spinner的正確方法。 – Srneczek