如果您在使用本機操作欄,您可以使用android:showAsAction
。每當您看到android:
作爲前綴時,就會知道它是由Android框架定義的屬性。
如果您正在使用操作欄的appcompat-v7
backport,該操作欄來自庫(appcompat-v7
)。圖書館不能發明新的android:
屬性。相反,對於庫定義的屬性,您使用綁定到http://schemas.android.com/apk/res-auto
URL的新名稱空間(例如,app:
)。
它說的android:命名空間是不能,如果我們假裝支持較舊的Android版本,如2.1
正確提供訪問屬性。在這種情況下,雖然android:showAsAction
已添加到Android 3.0框架中,但appcompat-v7
的部分目標是支持Android 2.1。雖然Google有時間機器,但他們沒有使用它來「鎖定」Android並添加以前不存在的屬性。 (儘管如果他們這樣做了,我們也不會了解它,因爲我們的過去會被改變爲擁有這些屬性,除非我們在某種程度上存在於正常時空連續體之外的存在,涉及穿着斗篷)
所以,appcompat-v7
可以使用屬性等android:icon
,它從1.0的Android存在,但不能支持到Android 3.0 android:showAsAction
之前。因此,他們有自己的屬性。
這不是「其他」。這是您之前定義的命名空間:'xmlns:[yourapp] =「http://schemas.android.com/apk/res-auto」'。沒有什麼能阻止你定義'xmlns:android =「http://schemas.android.com/apk/res-auto」' –
通過定義你的意思是使用這個命名空間:xmlns:doo =「http://schemas.android。 com/apk/res-auto「/////// doo是我的名字空間嗎? – Lothre1
**是**,確切地說。 'xmlns = XML NameSpace' –