我正在解析Android布局文件,我想弄清楚用户可能称之为Android命名空间(以防万一它不仅仅是android
)。我该如何计算这个前缀呢? XmlPullParser中是否有“get all prefixes”方法?
答案 0 :(得分:0)
我有一个有效的解决方案,虽然它不漂亮。在http://schemas.android.com/apk/res/android
找到了适当的android命名空间。执行以下操作,我可以将属性的前缀与命名空间匹配:
String prefix = xpp.getAttributePrefix(i);
if (xpp.getNamespace(prefix) == "http://schemas.android.com/apk/res/android") {
// We found it! Save the value of prefix
}
在上面的代码中,我将是具有前缀的元素属性的索引。
我设法通过简单地使用xpp.getAttributeValue("http://schemas.android.com/apk/res/android", attr);
找到我想要的东西来避免这种情况,无论实际的前缀如何。