Intereting Posts
एंड्रॉइड एम में EXTERNAL_STORAGE के लिए अनुदान की अनुमति आवश्यक है? जीएसओएन का उपयोग करके एंड्रॉइड में डायनामिक "की" के साथ JSON को पार्स करने के लिए क्या एंड्रॉइड लाइब्रेरी प्रोजेक्ट में एप्लिकेशन के संदर्भ प्राप्त करना संभव है? गतिशील रूप से सूची दृश्य की विभक्त ऊंचाई परिवर्तित करें? GZIPOutputStream का उपयोग कर एक स्ट्रिंग को संपीड़ित करना अनिर्धारित जटिल टाइप 'java.lang.Object' जटिल प्रकार एक्सटेंशन के लिए आधार के रूप में उपयोग किया जाता है मैं कैसे निर्धारित कर सकता हूं कि क्या वर्तमान में देखने योग्य क्षेत्र में एक geopoint प्रदर्शित किया जाता है? विशिष्ट दिनांक के साथ एंड्रॉइड अलार्म सेटिंग ऐप सदस्यता में परीक्षण करने में असमर्थ एंड्रॉइड एपीआई स्तर> = 8 में TextView घुमाएगी RegisterBroadcastReceiver में Manifest.xml सेटिंग या स्रोत कोड को लागू करें एंड्रॉइड एसडीके फ़ोल्डर में बहुत सी डिस्क स्पेस है क्या हमें सभी सिस्टम छवियों को रखने की आवश्यकता है? कैरिज रिटर्न / एंड्रॉइड में स्ट्रिंग में \ n लाइन ब्रेक्स एंड्रॉइड में बटन छवि आकार एस्प्रेसो के साथ चाइल्डव्यू और हैशेलिंग हैं

दृश्य / लेआउट की चौड़ाई / ऊंचाई कैसे प्राप्त करें, इसका पता नहीं लगाया जा सकता

मैं एक एंड्रॉइड नौसिखिया हूं यह दुनिया में सबसे आसान चीज होनी चाहिए, लेकिन इसे ढूँढ़ने से मुझे बैटिंग चल रही है: मैं किसी दृश्य या लेआउट के आयाम कैसे प्राप्त करूं?

मानक दृष्टिकोण की तर्ज पर कुछ लगता है:

। ((LinearLayout) this.findViewById (R.id.MyLayout)) getWidth ();

सिवाय इसके कि यह हमेशा शून्य देता है, क्योंकि मैं यह करने के लिए कोशिश कर रहा हूँ जब गतिविधि शुरू (onCreate) और ज्यामिति अभी तक सेट नहीं है मैंने नींद में डालकर लेआउट सेट करने का मौका देने का प्रयास किया, सिवाय इसके कि वह क्रिएट रिटर्न पर तब तक लेआउट सेट नहीं करेगा तो यह स्पष्ट रूप से थ्रेडेड नहीं है। : पी

मुझे मिलते-जुलते कॉलबैक फ़ंक्शंस के सभी प्रकार के ओवरराइड करने के बारे में बात करने वाले पृष्ठों का एक समूह मिला, ताकि सुनिश्चित हो सके कि लेआउट लोड होने पर लोड हो रहा है – लेकिन उन सभी ने त्रुटियों को फेंक दिया जब मैंने मेरी गतिविधि में ओवरराइड्स डालने की कोशिश की इसलिए मुझे लगता है कि वे लेआउट्स और / या विचारों के लिए कॉलबैक थे इसके साथ समस्या यह है कि मैं कस्टम व्यू / लेआउट क्लासेस का उपयोग नहीं कर रहा हूं – केवल मानक वाले इसलिए मैं सिर्फ एक ओवरराइड जोड़ नहीं सकता, जहां तक ​​मुझे पता है।

किसी को भी पता है कि मुझे क्या करना चाहिए? मैंने इस समस्या पर 8 घंटे की तरह कुछ बिताया है और कहीं भी नहीं मिला है। और ऐसा कुछ ऐसा है जो आम तौर पर सबसे अधिक विकास के वातावरण में ऐसा मामूली बात है!

Solutions Collecting From Web of "दृश्य / लेआउट की चौड़ाई / ऊंचाई कैसे प्राप्त करें, इसका पता नहीं लगाया जा सकता"

final View view = .....; // your view view.getViewTreeObserver().addOnGlobalLayoutListener( new ViewTreeObserver.OnGlobalLayoutListener() { @Override public void onGlobalLayout() { // make sure it is not called anymore view.getViewTreeObserver().removeGlobalOnLayoutListener(this); // your code to get dimensions of the view here: // ... } }); 

क्यों नहीं देखें। View.getLayoutParams() ? इसमें public int height और public int width

दो साल देर हो चुकी है, लेकिन इसे दूसरों के लिए यहां रख दिया गया ओन्डराइड फोकस पर ओवरराइड करने का प्रयास करें आप वहां के दृश्य की मापा चौड़ाई / ऊंचाई प्राप्त करने में सक्षम होना चाहिए।

onStart() करने के बारे में कैसे? इस पद्धति को onCreate() निष्पादन के बाद कहा जाता है, जिसका अर्थ है लेआउट को फुलाया गया है। एंड्रॉइड जीवनचक्र

मेरे पास एक काम है जहां मैं उपयोग करता हूं:

 view.postDelayed(new MyRunnable(), 500); 

जो अब से MyRunnable 500 ms में तर्क चलाता है यह क्रिएट या जीवनचिकित्सा पद्धति को वापस करने और ड्राइंग करने की अनुमति देता है ताकि मैं सही ऊँचाई और चौड़ाई प्राप्त कर सकूं। लेकिन यह भी बदसूरत है क्योंकि उपयोगकर्ता देरी को देख सकता है।