Ok, ich habe mehrmals gegoogelt und bin zu diesem Beitrag gekommen, daher denke ich, dass es gut ist, nicht nur für Sherlock, sondern auch für Appcompat beschrieben zu werden:
Höhe der Aktionsleiste mit appCompat
Ähnlich wie bei der @ Anthony-Beschreibung finden Sie sie mit folgendem Code (ich habe gerade die Ressourcen-ID geändert):
TypedValue tv = new TypedValue();
if (getActivity().getTheme().resolveAttribute(R.attr.actionBarSize, tv, true))
{
int actionBarHeight = TypedValue.complexToDimensionPixelSize(tv.data,getResources().getDisplayMetrics());
}
Pre Sandwitch Problem
Ich benötigte die Höhe der Aktionsleiste, da meine Ansicht auf Geräten vor ICE_CREAM_SANDWITCH die Aktionsleiste überlappte. Ich habe versucht, android: layout_marginTop = "? Android: attr / actionBarSize", android: layout_marginTop = "? Attr / actionBarSize" einzustellen, Überlappung auf view / actionbar und sogar feste Actionbar-Höhe mit benutzerdefiniertem Thema festzulegen, aber nichts hat funktioniert. So sah es aus:
Leider habe ich herausgefunden, dass ich mit der oben beschriebenen Methode nur die Hälfte der Höhe erhalte (ich gehe davon aus, dass die Optionsleiste nicht vorhanden ist). Um das Problem vollständig zu beheben, muss ich die Höhe der Aktionsleiste verdoppeln und alles scheint in Ordnung zu sein:
Wenn jemand eine bessere Lösung kennt (als actionBarHeight zu verdoppeln), werde ich mich freuen, es mir mitzuteilen, da ich aus der iOS-Entwicklung stamme und die meisten Dinge in der Android-Ansicht ziemlich verwirrend fanden :)
Grüße,
hris.to.