TextView 边距在 LinearLayout 中不起作用

TextView margins not working inside LinearLayout

我在下面有这个简单的 xml。问题是 layout_marginLeftlayout_marginRightlayout_marginToplayout_marginBottom 中的 none 有效。但是 layout_margin 有效!

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        >

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="16dp" <-- does not work
            android:layout_marginTop="16dp" <-- does not work
            android:text="This is a text!"
            />

</LinearLayout>

此外,我注意到当我添加一个不完整的 layout_margin="0"(没有 dp)时它会导致错误,但 marginLeftmarginRight 等有效!但是后来我有一个错误,它不会编译。这是怎么回事?!

找到罪魁祸首了!原来我的 themes.xml

中有这一行
<item name="android:layout_margin">2dp</item>

这弄乱了所有 layout_margin 调用。删除了该行,现在边距工作正常。