我有 FrameLayout ,对于大多数片段,parrent padding是好的。但我有特殊的片段,不得包含填充。
<FrameLayout
android:id="@+id/frame_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
/>
<!-- My especial fragment -->
<LiearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="-10dp"
/>
任何建议!
答案 0 :(得分:21)
好奇,只是使用layout_margin
似乎不起作用。然而,
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
android:clipToPadding="false">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="-10dp"
android:layout_marginStart="-10dp"
android:layout_marginEnd="-10dp"
android:layout_marginBottom="-10dp" />
</FrameLayout>
似乎有用(IntelliJ android预览版)。
请勿忘记: android:clipToPadding="false"
在父布局中。
答案 1 :(得分:1)
如果您只是从FrameLayout中移除android:padding="10dp"
并在&#34;普通&#34; 片段中添加10dp填充,那么事情就会变得更容易了你的&#34;特殊&#34; 片段,你不添加任何填充。可以做到负边距,但我认为只有在没有其他方法的情况下才能使用。