Yeni güncellemede Google, API 7+ seviyesinde ActionBar'ı destekleyen yeni bir API destek kütüphanesi yayınladı. android.support.v7 ile "ActionBarActivity" hiçbir menü gösterilmiyor
bu güncellemesine kadar ActionBarSherlock kullanılan ve menü yüklemek için kod yazdı:@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.activity_main, menu);
return true;
}
ve menü dosyasını:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/item_menu_ok" android:icon="@drawable/ic_action_ok"
android:title="@string/ok" android:showAsAction="always"></item>
<item android:id="@+id/item_menu_cancel" android:icon="@drawable/ic_action_cancel"
android:title="@string/cancel" android:showAsAction="always"></item>
</menu>
eylem çubuğunda menü düğmeleri ayarlamak için. Bu kod, ActionBarSherlock ile mükemmel bir şekilde çalıştı. Ancak eylem çubuğunu yeni destek kitaplığına değiştirdiğimde, düğmeler eylem çubuğunda gösterilmez. android:showAsAction="always"
olarak ayarlanmış olsalar bile. Ve kodu ayıklarken, menu.getSize()
işlevi 2 döndürür ve bu doğrudur, ancak hiçbir düğme gösterilmez ..
Düğmeler neden yeni destek kitaplığında gösterilmiyor?
Yea, sorun 'xmlns: yourapp =" http://schemas.android.com/apk/res-auto "' idi. Bu Destek v7 için değişiklik mi? Çünkü 'ActionBarSherlock' eski kodum mükemmel çalıştı – nrofis
@ nrofis: AppCompat'ın neden Android: showAsAction 'ActionBarSherlock yolunu kullanamadığı hakkında hiçbir fikrim yok. – CommonsWare
Teşekkürler Bu, gözden kaçırmayı başardığım küçük ve tuhaf bir değişiklik! –