2016-04-03 6 views
5

मैं स्क्रीन पर इसे प्रदर्शित करने से पहले एक स्टैक व्यू के इंस्टिनस्टिक आकार को निर्धारित करना चाहता हूं। विचार स्क्रीन के निचले भाग से पुल अप मेनू के हिस्से के रूप में इसका उपयोग करना है, लेकिन जब मैं ऑब्जेक्ट से पहले यह पूछता हूं कि आकार (-1, -1) है। क्या मुझे कुछ भी सामग्री सामग्री आकार में कॉल करने से पहले करना चाहिए?स्क्रीन पर प्रदर्शित होने से पहले UIStackView के आंतरिक आकार को निर्धारित करने के लिए

उत्तर

11

UIStackView कोई आंतरिक सामग्री आकार नहीं है। आपको -1 मिल रहा है क्योंकि यह UIViewNoIntrinsicMetric का मान है।

इसके बजाय, अपनी फिटिंग आकार के लिए पूछना:

let size = stackView.systemLayoutSizeFittingSize(UILayoutFittingCompressedSize) 
+0

मैं इस काम करता है लगता है। अभी भी शेष कोड के लिए तर्क को हल करने की आवश्यकता है लेकिन यह सही आयाम वापस देता है। – drw

+0

@rob हमेशा के माध्यम से आ रहा है! :) बहुत अच्छा काम करता है – Alan

संबंधित मुद्दे