ठीक है, मैं चारों ओर घूम रहा था और कई बार इस पोस्ट पर गया था, इसलिए मुझे लगता है कि यह न केवल शर्लक के लिए वर्णित किया जाएगा बल्कि ऐप्पोमैट के लिए भी अच्छा होगा:
AppCompat का उपयोग करते हुए एक्शन बार ऊंचाई
बहुत सुंदर @ वर्णन के अनुरूप आप इसे निम्नलिखित कोड के साथ पा सकते हैं (मैंने संसाधन आईडी बदल दी है):
TypedValue tv = new TypedValue();
if (getActivity().getTheme().resolveAttribute(R.attr.actionBarSize, tv, true))
{
int actionBarHeight = TypedValue.complexToDimensionPixelSize(tv.data,getResources().getDisplayMetrics());
}
पूर्व Sandwitch समस्या
मुझे एक्शन बार ऊंचाई की आवश्यकता थी क्योंकि पूर्व ICE_CREAM_SANDWITCH उपकरणों पर मेरा विचार एक्शन बार ओवरलैपिंग था। मैंने एंड्रॉइड सेट करने की कोशिश की: layout_marginTop = "? Android: attr / actionBarSize", android: Layout_marginTop = "? Attr / actionBarSize", कस्टम थीम के साथ ओवरलैप / व्यूबार और यहां तक कि फिक्स्ड एक्शनबार को ओवरलैप करने की स्थापना की, लेकिन कुछ भी काम नहीं किया। यह कैसे देखा:
दुर्भाग्य से मुझे पता चला है कि ऊपर वर्णित विधि के साथ मुझे केवल आधी ऊंचाई मिलती है (मुझे लगता है कि विकल्प बार जगह नहीं ली गई है) इसलिए पूरी तरह से ठीक करने के लिए मुझे एक्शन बार ऊंचाई को दोगुना करने की आवश्यकता है और सब कुछ ठीक लगता है:
अगर किसी को बेहतर समाधान पता है (कार्रवाई को दोगुना करने से) तो मुझे खुशी होगी कि मुझे पता चल गया है कि मैं आईओएस विकास से आया हूं और मुझे एंड्रॉइड के अधिकांश सामान बहुत भ्रामक लगते हैं :)
सादर,
hris.to