अंदर LinearLayout में मार्जिन समझने की कोशिश कर रहा एक LinearLayout
एक SrollView
अंदर की आवश्यकता है और उस LinearLayout
ScrollView
से एक मार्जिन होना आवश्यक है। सबसे पहले, इस मुद्दे को हल करने के बारे में सोचने का एकमात्र तरीका LinearLayout
था और इस अंतिम लेआउट पर मार्जिन सेट के साथ LinearLayout
के अंदर था।एक scrollview
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:fillViewport="true"
android:background="@color/layout_color_green">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/layout_color_yellow">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
android:orientation="vertical"
android:background="@color/layout_color_blue">
</LinearLayout>
</LinearLayout>
</ScrollView>
मेरा प्रश्न है: क्यों मैं ऐसा करने की जरूरत है कि वे अगर वे बाहरी LinearLayout.
उदाहरण में स्थापित किए गए काम नहीं होगा?
अगर मैं था केवल एक LinearLayout
कोई मार्जिन होगा ...
उदाहरण:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:fillViewport="true"
android:background="@color/layout_color_green">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
android:orientation="vertical"
android:background="@color/layout_color_blue">
</LinearLayout>
</ScrollView>
फिर, कुछ इसी तरह की समस्या के लिए खोज, मैंने पाया कुछ लेआउट जिसने मुझे LinearLayout
में मार्जिन के बजाय ScrollView
में पैडिंग का उपयोग करने का विचार दिया। यह मेरी समस्या को हल करता है और मुझे किसी अन्य के अंदर LinearLayout
की आवश्यकता नहीं है। यह एक और अधिक सुरुचिपूर्ण समाधान है।
फिर भी, मैं समझना चाहता हूं कि LinearLayout
के अंदर सरल मार्जिन ScrollView
के अंदर क्यों काम नहीं करता है। क्योंकि यह ScrollView
के अंदर नहीं है, तो यह ठीक काम करता है।
कोई भी जानता है क्यों?
ScrollView
फैली FrameLayout
:
लेकिन बात यह है कि मार्जिन केवल समस्या नहीं हैं।यदि मेरे पास 'LinearLayout' ऊंचाई 'wrap_content' पर सेट है और सभी बच्चों की ऊंचाई' match_parent' पर सेट है, तो वास्तव में बच्चे 'fill_parent' होंगे, जो कि 'स्क्रॉल व्यू' से आता है। और 'wrap_content' नहीं' जो उनके प्रत्यक्ष माता-पिता 'लीनियरलाउट' से मूल्य है। यह समस्या तब भी नहीं होती है जब मैं एक 'LinearLayout' का उपयोग दूसरे के अंदर करता हूं। तो मुझे लगता है कि हम जानते हैं कि 'स्क्रॉलव्यू' के लिए और भी कुछ है !? –
हां बिल्कुल। आपने उस व्यवहार को 'एंड्रॉइड' से भर दिया: fillViewport = "true" '। – Knickedi
तो, क्या आप अनुशंसा करते हैं कि मैं मार्जिन के बजाय पैडिंग के साथ जाऊं और 'लीनियरलाउट' के सभी बच्चों को 'wrap_content'' पर सेट करूँ? –