Margin does not impact in “include”

I have a view with articles. It uses “include”, and I’m trying to make a little margin between them. However, “android:layout_marginTop” does not seem to have any impact on the layout.

What am I doing wrong?

  • Is it possible to have more than one string resource file in Android?
  • Cordova Plugin Whitelist Failed asking for cordova ios 4
  • How to implement an android:background that doesn't stretch?
  • How to integrate PayU money Gateway in Android?
  • Android AudioRecord initialization fails every time
  • Using Android Drag and Drop framework in My custom Launcher app
  • <LinearLayout 
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >    
        <include android:id="@+id/article1" layout="@layout/mainarticle" />
        <include android:id="@+id/article2" android:layout_marginTop="10dip" layout="@layout/article" />
        <include android:id="@+id/article3" android:layout_marginTop="10dip" layout="@layout/article" />
        <include android:id="@+id/article4" android:layout_marginTop="10dip" layout="@layout/article" />
        <include android:id="@+id/article5" android:layout_marginTop="10dip" layout="@layout/article" />    
    </LinearLayout>
    

    Related posts:

    String.xml or Constants class
    How to add a gradient to buttons in android through xml?
    kotlin and ArgumentCaptor - IllegalStateException
    How to find android TextView number of characters per line?
    Animation of android TextView&#039;s text size and not the entire TextView
    Android: How to make an AutoCompleteTextView SingleLine?
  • Error in Android “SuperNotCalledException:Activity did not call through to super.OnCreate()”
  • Android BroadcastReceiver on startup - keep running when Activity is in Background
  • Open or see the content of a .txt with adb shell android
  • android reduce file size for camera captured image to be less than 500 kb
  • Android Emulator snapshot error
  • Gradle Error:Execution failed for task ':app:processDebugGoogleServices'
  • 4 Solutions collect form web for “Margin does not impact in “include””

    You should add the android:layout_width and android:layout_height attributes in the include tag. Otherwise, the margins are not taken into consideration.

    However, if you want to override layout attributes using the <include> tag, you must override both android:layout_height and android:layout_width in order for other layout attributes to take effect.

    https://developer.android.com/training/improving-layouts/reusing-layouts.html#Include

    include tag support below properties:

    1. Any android:layout_* attributes which you can overwrite.

    2. android:id attribute.

    3. layout attribute.
    4. android:visibility attribute.

    Etc:

    include android:id=”@+id/news_title”
    android:layout_width=”match_parent”
    android:layout_height=”match_parent”
    layout=”@layout/title”/>

    Please read:
    https://github.com/android/platform_frameworks_base/blob/master/core/java/android/view/LayoutInflater.java#L777

    http://developer.android.com/training/improving-layouts/reusing-layouts.html

    I had the same problem and the answer from Kamen Goranchev doesn’t work for me.

    I have used ADT’s feature “Extract include…” from the layout editor to extract some commonly used badges as a list of TextView-elements. So the Extract-include-tool wrapped my TextView-Elements in a merge-tag, which usually would be fine.

    But, according to the very helpful sourcecode-link from boiledwater I see in line 888 https://github.com/android/platform_frameworks_base/blob/master/core/java/android/view/LayoutInflater.java#L888, the layout-attributes from the include-tag itself are only parsed if the include doesn’t have the merge-tag as its root-element.

    So I removed the merge-tag from the include and used another ViewGroup-tag like e.g. FrameLayout. Then the margins in the include-tag are working as expected.

    Another solution would be to add Space before include:

        <Space
            android:layout_height="8dp"
            android:layout_width="match_parent" />
    
    Android Babe is a Google Android Fan, All about Android Phones, Android Wear, Android Dev and Android Games Apps and so on.