Implement AAPT Bundle format
AAPT will scan XML files looking for the <aapt:attr> XML tag. <!-- @layout/bundle.xml --> <ImageView xmlns:aapt="http://schemas.android.com/aapt"> <aapt:attr name="android:src"> <vector android:pathData="..." ...> </vector> </aapt:attr> </ImageView> The SINGLE child element of the <aapt:attr> tag is extracted into its own top level resource. It is given a generated name. The parent element of <aapt:attr> is then given the resource attribute that was assigned to the `name' attribute. The value is set to a reference to the generated resource. <!-- @layout/bundle.xml --> <ImageView android:src="@drawable/bundle_1.xml"> </ImageView> <!-- @layout/bundle_1.xml --> <vector android:pathData="..." ...> </vector> Bug:22627686 Change-Id: I8575fc4f739011402662fbf6b3db96df0012f598
This commit is contained in:
@@ -693,6 +693,12 @@ const Vector<sp<XMLNode> >& XMLNode::getChildren() const
|
||||
return mChildren;
|
||||
}
|
||||
|
||||
|
||||
Vector<sp<XMLNode> >& XMLNode::getChildren()
|
||||
{
|
||||
return mChildren;
|
||||
}
|
||||
|
||||
const String8& XMLNode::getFilename() const
|
||||
{
|
||||
return mFilename;
|
||||
@@ -717,6 +723,18 @@ const XMLNode::attribute_entry* XMLNode::getAttribute(const String16& ns,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
bool XMLNode::removeAttribute(const String16& ns, const String16& name)
|
||||
{
|
||||
for (size_t i = 0; i < mAttributes.size(); i++) {
|
||||
const attribute_entry& ae(mAttributes.itemAt(i));
|
||||
if (ae.ns == ns && ae.name == name) {
|
||||
removeAttribute(i);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
XMLNode::attribute_entry* XMLNode::editAttribute(const String16& ns,
|
||||
const String16& name)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user