Android动画XML中/>的作用:是错误还是特殊功能?
关于Android动画XML中
/>的解析 这是错误写法,不存在特殊功能,会导致XML解析异常。
原因分析:
- 在XML语法中,自闭合标签的正确写法是
/>,比如<alpha .../>。 - 代码里的
/&gt;是双重转义的错误结果:&是&的转义字符,所以/&gt;实际会被XML解析器解析为/>,但这个解析后的/>并不是标签的闭合部分,而是作为<alpha>标签内的文本内容存在。 - 同时代码后面还有
</alpha>标签,这会造成<alpha>标签被错误地先包含文本内容、再重复闭合,不符合Android动画XML的语法规范,最终会导致动画无法正常加载。
正确写法:
将/&gt;替换为/>,并删除多余的</alpha>标签,正确的自闭合格式如下:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:duration="500" android:fromAlpha="1" android:toAlpha="0" android:fillBefore="true"/> </set>
或者使用非自闭合写法,把属性放在<alpha>标签内后用</alpha>闭合:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:duration="500" android:fromAlpha="1" android:toAlpha="0" android:fillBefore="true"> </alpha> </set>
内容的提问来源于stack exchange,提问作者AndreaF
相关产品推荐
相关产品推荐

