2016-04-14 8 views
7

जब भी मैं डिजाइनर सतह पर एक नया कंटेनर व्यू जोड़ता हूं और layout:width और layout:height से wrap_content दोनों सेट करता है, तो कंटेनर व्यू आकार नीचे दिखाए गए अनुसार आगे बढ़ता है।कंटेनर एंड्रॉइड स्टूडियो पूर्वावलोकन में आगे बढ़ते हैं

इस मुद्दे को ठीक करने के लिए मुझे क्या करना चाहिए? content_main.xml

enter image description here

संपादित की

Android Studio

कोड स्निपेट: ऊपर छवि, लेकिन अभी भी एक ही मुद्दे से कुछ भिन्न हो सकता है।

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    tools:context="com.dance2die.myapplication.MainActivity" 
    tools:showIn="@layout/activity_main"> 

    <ListView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/listView" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentStart="true" 
     android:padding="0dp" /> 
</RelativeLayout> 
+2

मुझे विश्वास है कि ऐसा इसलिए होता है क्योंकि सूचीदृश्य सूची दृश्य वस्तुओं के साथ सूचीबद्ध होने की आवश्यकता है इससे पहले सूचीदृश्य इसकी ऊंचाई और चौड़ाई की गणना कर सकता है। इस प्रकार, मापित ऊंचाई और चौड़ाई के बिना, यह सामग्री को लपेट नहीं सकता है जैसा आप चाहते हैं। मुझे नहीं लगता कि xml में नमूना सामग्री के साथ सूचीदृश्य को पॉप्युलेट करने के अलावा इसे ठीक करने का एक अच्छा तरीका है। –

+0

छवि में उपलब्ध कराने के बजाय अपने एक्सएमएल कोड स्निपेट को पोस्ट करें। –

उत्तर

2

उपयोग

एंड्रॉयड: layout_width = "match_parent" एंड्रॉयड: layout_height = "match_parent"

+0

दुर्भाग्य से 'एंड्रॉइड' दोनों को बदलना: layout_width/height' से 'match_parent' ने पूर्वावलोकन व्यवहार को नहीं बदला। – Sung

+0

यदि यह एचटीएमएल की तरह कुछ है, तो क्या होता है यदि आप माता-पिता से मेल खाते हैं लेकिन पैडिंग-टॉप और पैडिंग-डाउन को 0 डीपी पर सेट करते हैं? –

+0

@PaulTotzke अभी भी वही समस्या है। मैं एक ट्यूटोरियल का पालन कर रहा था। ट्यूटोरियल के भीतर, जब लेखक ने सभी पैडिंग 0 पर सेट की, तो सूचीदृश्य ने पूरी स्क्रीन ली। लेकिन मेरे मामले में यह नहीं होता है। – Sung

1

एक जंगली अनुमान लेकिन एक relativelayout के बजाय एक scrollview उपयोग करने के लिए प्रयास करें।

या लेआउट के भीतर तो यह वही आकार रहेगा जब सूचीदृश्य पॉप्युलेट हो और खिंचाव न हो।

1

यह आपके app:layout_behavior="" को बदलने या इसे हटाने का प्रयास करने के कारण है, तो आपका कंटेनर आकार आगे नहीं जायेगा।

+0

'ऐप सेट करना: layout_behavior = "" 'एक्शनबार के ऊपर और पीछे सूचीदृश्य को ऊपर ले गया। यहां यह कैसा दिखता है। http://i.imgur.com/LE8JpEy.png – Sung

1

कोशिश बदलते warp_contentmatch_parent

<ListView 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/listView" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentStart="true" 
    android:padding="0dp" /> 
2

है कि के साथ गलत कुछ भी नहीं है।

पूर्वावलोकन आपको यह दिखाता है कि यह Simple 2-Line List item का उपयोग करके क्या होगा। यह बढ़ाया जाता है क्योंकि आप इसे wrap content पर सेट करते हैं, इसलिए ListView वास्तव में आपकी स्क्रीन से अधिक लंबा होगा यदि इसमें 8 से अधिक आइटम होंगे (कम से कम उस डिवाइस पर पूर्वावलोकन में, शायद आप Nexus 6 के पूर्वावलोकन पर देखेंगे 10 आइटम)।

0

या तो आपका शीर्ष मेनू बार आपके बच्चे को विभाजित कर रहा है या आपकी मुलायम नौसेना कुंजी को 'फ्लोट किया जा रहा है'।

सबसे पहले, स्टेटस बार (शीर्ष) को छिपाने का प्रयास करें। http://developer.android.com/training/system-ui/status.html

दूसरा, एंड्रॉइड वर्चुअल डिवाइस मैनेजर में एक नया डिवाइस आज़माएं जिसमें गैलेक्सी एस 7 की तरह वर्चुअल बटन बार नहीं है या इसे छिपाने का प्रयास करें। http://developer.android.com/training/system-ui/navigation.html

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