क्या सॉफ्ट बटन बार और स्टेटस बार टॉगर के आकार को पाने के लिए एंड्रॉइड में कोई तरीका है? या इन दोनों सलाखों की ऊंचाई के बिना स्क्रीन ऊंचाई पाने के लिए एक तरीका है? (वे हमेशा एक ही नहीं कर रहे हैं, उदाहरण के लिए नेक्सस 7 को देखो)स्टेटस बार और सॉफ्ट कुंजी बटन बार की ऊंचाई कैसे प्राप्त करें?
13
A
उत्तर
26
स्थिति पट्टी की ऊंचाई
स्थिति पट्टी की ऊंचाई एक डिवाइस में, स्क्रीन आकार पर निर्भर करता है, उदाहरण के लिए 240 X 320 स्क्रीन आकार के साथ स्थिति पट्टी ऊंचाई 320 x 480 स्क्रीन आकार के साथ एक डिवाइस के लिए 20px है, स्थिति पट्टी ऊंचाई 25px है, 480 x 800 स्थिति पट्टी ऊंचाई के साथ एक डिवाइस के लिए
: 38pxहोना चाहिए जिससे कि मैं आपकी गतिविधि के onCreate()
पद्धति पर स्थिति पट्टी की ऊंचाई प्राप्त करने के लिए स्थिति पट्टी ऊंचाई
Rect rectangle = new Rect();
Window window = getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(rectangle);
int statusBarHeight = rectangle.top;
int contentViewTop = window.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int titleBarHeight= contentViewTop - statusBarHeight;
Log.i("*** Value :: ", "StatusBar Height= " + statusBarHeight + " , TitleBar Height = " + titleBarHeight);
प्राप्त करने के लिए इस स्क्रिप्ट का उपयोग करने के लिए सलाह देते हैं, इस विधि का उपयोग
public int getStatusBarHeight() {
int result = 0;
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
result = getResources().getDimensionPixelSize(resourceId);
}
return result;
}
शीतल कुंजी बटन बार
एंड्रॉइड किटकैट (4.4) में लेआउट पैडिंग सेट करने के लिए यह विधि बहुत उपयोगी है। इसका उपयोग करके, आप अपने लेआउट पर सॉफ्ट बटन बार ओवरलैपिंग से बच सकते हैं।
getRealMetrics
विधि एपीआई 17 के साथ ही उपलब्ध है और +
@SuppressLint("NewApi")
private int getSoftButtonsBarHeight() {
// getRealMetrics is only available with API 17 and +
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int usableHeight = metrics.heightPixels;
getWindowManager().getDefaultDisplay().getRealMetrics(metrics);
int realHeight = metrics.heightPixels;
if (realHeight > usableHeight)
return realHeight - usableHeight;
else
return 0;
}
return 0;
}
संदर्भ:
संबंधित मुद्दे
- 1. नेविगेशन बार और स्टेटस बार
- 2. स्टेटस बार
- 3. स्टेटस बार
- 4. स्टेटस बार
- 5. स्टेटस बार
- 6. स्टेटस बार
- 7. एंड्रॉइड: स्टेटस बार अधिसूचना
- 8. एंड्रॉइड: स्टेटस बार/पावर बार दिखाएं/छुपाएं
- 9. एंड्रॉइड सॉफ्ट कीबोर्ड ऊंचाई कैसे प्राप्त करें?
- 10. स्टेटस बार और नेविगेशन बार पर Google नाओ ग्रेडियेंट/छाया
- 11. पॉपओवर स्टेटस बार
- 12. स्टेटस बार छुपा
- 13. स्विफ्ट में स्थिति बार ऊंचाई
- 14. स्टेटस बार में PERMANENT एप्लिकेशन नोटिफ़ायर कैसे प्राप्त करें?
- 15. बटन अधिसूचना पर क्लिक होने पर स्टेटस बार बंद करें
- 16. एंड्रॉइड स्टेटस बार आइकन
- 17. बदलें स्टेटस बार अल्फा
- 18. स्टेटस बार पर टेक्स्ट कैसे सेट करें?
- 19. एंड्रॉइड: स्टेटस बार
- 20. एंड्रॉइड फोन पर सॉफ्ट-की बार को कैसे छिपाना है?
- 21. tmux स्टेटस बार कॉन्फ़िगरेशन
- 22. आईओएस 8 लॉन्च छवि फ़ाइल - नेविगेशन बार और स्टेटस बार
- 23. आईओएस स्टेटस बार
- 24. टूलबार स्टेटस बार
- 25. SFSafariViewController स्टेटस बार शैली
- 26. एंड्रॉइड: स्टेटस बार व्हाइट
- 27. एंड्रॉइड ऐपबारलेआउट ऊंचाई स्टेटस बार में दिखाई देती है
- 28. आईओएस 7 - स्टेटस बार
- 29. MPMoviePlayerViewController स्टेटस बार छुपाएं
- 30. पारदर्शी स्टेटस बार किटकैट
वाह धन्यवाद बहुत इस उत्तर के लिए। मैंने सोचा कि दूसरी विधि एक ही समय में स्थिति और सॉफ्टबटन बार दोनों में काम नहीं करेगी, अनुमान लगाओ कि मैं गलत था, मैंने पहले से ही इसका परीक्षण किया है और यह काम करता है। : डी भी बेहतर, यह काम करता है और एपीआई 16 भी! – Joske369
@ आपका स्वागत है। मैं अब संपादित करता हूं ;-) –
स्टेटसबार नरम बटन बार होने पर केवल एक समस्या है, पहली विधि 25 पिक्सेल लौटाती है और सॉफ्टबूटन विधि 48 पिक्सल (सोनी एक्सपीरिया टैबलेट एस) – Joske369