android:contentInsetLeft="0dp" 与 app:contentInsetLeft="0dp"

android:contentInsetLeft="0dp" vs app:contentInsetLeft="0dp"

我正在尝试删除 toolbar 的左侧 space。我看到这个 似乎对我有用。我无法理解为同一属性添加 androidapp namespace 是什么意思。

它们之间有什么区别吗? android:contentInsetLeft="0dp" vs app:contentInsetLeft="0dp"

android:contentInsetLeft 应与本机 Toolbar android.widget.ToolBar 一起使用,而 app:contentInsetLeft 必须与支持库 Toolbar 一起使用 android.support.v7.widget.Toolbar.根据经验,res-auto 命名空间与 support-library

一起使用

android 命名空间是为 Android 框架中的视图保留的。

另一方面,app 命名空间用于支持库中的视图。

因此,在这种情况下,android 将应用于 Android SDK - android.widget.ToolBar 中附带的 Toolbar。并且 app 将应用于支持库附带的 Toolbar

显然,没有必要将 androidapp 应用到同一个视图,因为它要么来自 Android SDK,要么来自支持库。