मुख्य सामग्री पर जाएँ
CrossFly 100% ओपन सोर्सGitHub पर फ़ॉलो करें
CrossFlyCrossFly
शुरू करें

यह पृष्ठ पुर्तगाली से मशीन-अनुवादित है और इसमें त्रुटियाँ हो सकती हैं। पुर्तगाली संस्करण प्रामाणिक है।

Layout और Relative मॉडल

CrossFly डिफ़ॉल्ट रूप से सापेक्ष है, निरपेक्ष नहीं। इसे समझना यह समझा देता है कि आपकी स्क्रीनें अलग-अलग आकारों, घनत्वों और घुमावों के अनुसार स्वयं क्यों ढल जाती हैं।

layout का अनुबंध

हर container अपने बच्चों की व्यवस्था एक Layout को सौंपता है। चक्र, झरने के क्रम में, हमेशा यही है:

मापो → स्थान दो → बच्चों को onLayout प्रसारित करो।

जब layout अमान्य होता है (आकार, सामग्री या घुमाव बदला), फ्रेमवर्क इस चक्र को जड़ से फिर से करता है। आप हाथ से स्थितियाँ पुनः-गणना नहीं करते — आप इरादा घोषित करते हैं और Layout उसे हल करता है।

layouts का दायरा (इरादे के अनुसार)

  • ढेर लगाना (लंबवत/क्षैतिज) → VerticalLayout / HorizontalLayout
  • भिन्न के अनुसार grid → GridLayout
  • एक कंपोनेंट को दूसरे से लंगर डालना → RelativeLayout
  • समान रूप से अंतर देना → EvenlySpacedLayout
  • मुक्त स्थिति → RandomLayout

किसी container का Layout बदलना बच्चों को छुए बिना व्यवस्था बदल देता है — यही घुमाव के प्रति प्रतिक्रिया को मामूली बना देता है। (Layouts में कैसे-करें।)

अवधारणात्मक हृदय: Relative

आकार और स्थितियाँ निश्चित पिक्सेल नहीं हैं — वे संबंध हैं। चार रूप:

रूप अर्थ किसके साथ स्केल करता है
Relative.ofFont(1.5f) फ़ॉन्ट की ऊँचाई का भिन्न UI का zoom/घनत्व
Relative.ofScreen(0.8f[, ScreenSize]) स्क्रीन का भिन्न स्क्रीन का आकार / अभिविन्यास
LAY_FILL / LAY_AUTO / भिन्न container का भिन्न अभिभावक का आकार
Relative.ofPixels(24f) निरपेक्ष पिक्सेल कुछ नहीं (अपवाद-स्वरूप उपयोग करें)

और Gap (padding ingap / margin outgap) उसी तर्क का पालन करता है: Gap.ofFont(...) साथ में स्केल करता है।

// header (सामग्री की ऊँचाई), सामग्री (शेष जगह सोखती है), footer (सामग्री) — VerticalLayout में:
tela.add(LAY_AUTO, header);
tela.add(LAY_FILL, conteudo);   // "इलास्टिक"
tela.add(LAY_AUTO, footer);

यह उत्तरदायित्व का आधार क्यों है

यदि कोई निश्चित पिक्सेल इधर-उधर बिखरे नहीं हैं, तो फ्रेमवर्क हर resize, घुमाव या स्केल परिवर्तन पर सब कुछ पुनः-गणना कर सकता है — और स्क्रीन बस फिर से ढल जाती है। उत्तरदायित्व कोई अलग सुविधा नहीं है: यह संबंधों के हिसाब से मापने का परिणाम है।

स्वर्णिम नियम: आकारों को Relative/भिन्न/LAY_FILL के रूप में लिखें; ofPixels को सचमुच निश्चित मामलों के लिए बचाकर रखें। एक निश्चित पिक्सेल इस दाँव पर है कि स्क्रीन कभी नहीं बदलेगी — और वह हमेशा बदलती है।

यह भी देखें

क्या यह पृष्ठ उपयोगी था?