Я использую ActionBarSherlock 4.3.1 для совместимости с API 8. Я использую накладку ActionBar:ActionBarSherlock получать размер ActionBar
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
setContentView(R.layout.activity_main);
...
У меня есть ImageView
, который заполняет весь экран, в том числе под ActionBar (который является полупрозрачным, как Google Maps). Я использую RelativeLayout
для рисования наложения кнопок сверху ImageView
. RelativeLayout смещается вертикально по размеру Actionbar с помощью android:layout_marginTop="?attr/actionBarSize"
, так что верхняя строка кнопок отображается только под панелью действий.
Вертикальное смещение отлично работает на ICS и включенном, но не на Gingerbread (не проверено HC или Froyo), где кнопки (которые должны отображаться только вертикально ниже панели действий) закрываются панелью действий, а не вертикально сдвинуты вниз.