我使用的是自定義操作欄視圖,如下面的屏幕截圖所示,操作欄中有空白的灰色空間。我要刪除它。我做了什么:res / values-v11 / styles.xml<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light"> <item name="android:actionBarStyle">@style/ActionBarStyle</item> <item name="actionBarStyle">@style/ActionBarStyle</item></style>res / values / my_custom_actionbar.xml<resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="ActionBarStyle" parent="@style/Widget.AppCompat.Light.ActionBar.Solid"> <item name="android:height">60dp</item> </style></resources>表現(xiàn)<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19" /><application android:icon="@drawable/ic_launcher" android:label="@string/AppName" android:theme="@style/AppBaseTheme" > <!-- activities... etc --></application>主要活動public void onCreate(Bundle bundle) { super.onCreate(bundle); ActionBar actionbar = getSupportActionBar(); actionbar.setDefaultDisplayHomeAsUpEnabled(false); actionbar.setDisplayHomeAsUpEnabled(false); actionbar.setDisplayShowCustomEnabled(true); actionbar.setDisplayShowHomeEnabled(false); actionbar.setDisplayShowTitleEnabled(false); actionbar.setDisplayUseLogoEnabled(false); actionbar.setHomeButtonEnabled(false); // Add the custom layout View view = LayoutInflater.from(this).inflate(R.layout.actionbar, null, false); actionbar.setCustomView(view);}我發(fā)現(xiàn)了最近的帖子,指出最新版本存在問題。我還將ADT和SDK更新為Android 5。Android ActionBar的自定義視圖未填充父級我不知道該怎么辦。編輯(部分解決方案):無法在Android <= API 10上運行。Android Lollipop,AppCompat ActionBar自定義視圖不會占用整個屏幕寬度我改變了什么:使用最新的SDK版本:<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="21" />
3 回答

慕蓋茨4494581
TA貢獻1850條經(jīng)驗 獲得超11個贊
嘗試這個:
ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setDisplayShowTitleEnabled(false);
View customView = getLayoutInflater().inflate(R.layout.main_action_bar, null);
actionBar.setCustomView(customView);
Toolbar parent =(Toolbar) customView.getParent();
parent.setPadding(0,0,0,0);//for tab otherwise give space in tab
parent.setContentInsetsAbsolute(0,0);
我在項目中使用了此代碼,祝您好運;
添加回答
舉報
0/150
提交
取消