51

私は記事で見解を持っています。「include」を使用しており、それらの間に少し余裕を持たせようとしています。ただし、「android:layout_marginTop」はレイアウトに影響を与えていないようです。

私は何が間違っているのですか?

<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>
4

6 に答える 6

82

android:layout_widthタグにおよびandroid:layout_height属性を追加する必要がありますinclude。それ以外の場合、マージンは考慮されません。

ただし、<include>タグを使用してレイアウト属性をオーバーライドする場合は、他のレイアウト属性を有効にするために、android:layout_heightとの両方をオーバーライドする必要があります。android:layout_width

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

于 2012-11-29T10:12:18.813 に答える
8

includeプロパティの下のタグのサポート:

  1. layout_*上書きできる任意の android:属性。

  2. android:id属性。

  3. layout属性。
  4. android:visibility属性。

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

読んでください: 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

于 2013-11-29T03:02:30.950 に答える
2

インクルードを他のレイアウトに挿入する必要があります。

例: 相対レイアウト

<RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginTop="15dp">

        <include
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            layout="@layout/sub_edit_new_customer" />

    </RelativeLayout>
于 2018-08-29T05:27:01.717 に答える
0

私の場合、パディングを追加して問題を解決しました。

含めたいレイアウト:

<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <androidx.constraintlayout.widget.ConstraintLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="15dp"> <!-- add padding here -->

        <!-- your custom layout -->

    </androidx.constraintlayout.widget.ConstraintLayout>

</layout>
于 2020-12-14T13:29:33.667 に答える