问题描述:
在开发过程中,会存在引用jar包时,自定义的attrs.xml中属性与jar包中属性冲突的情况:
碰到这个问题,我在网上查找了许多方法,包括stackoverflow等,好像没有查到很好的解决方式(汗!我的查找能力有待提高),在此我总结了下这次问题的解决办法:
- 第一、更改自定义的属性名称,比如
title
-->title_self
,但由于项目中引用该属性次数较多,且更改的话存在风险,故此方法不被采用
-
第二、通过追溯jar包中的
title
引用,我发现jar包中有重复引用过title
属性(以下为简单剪切代码)values文件下: <resources> <attr format="string" name="title"/> <declare-styleable name="head"><attr format="string" name="title"/> </declare-styleable> <resources>
因此我们修改自定义属性,去除叼format格式宣称,仅保留
name="title"
属性,测试APP运行正常且没有问题<declare-styleable name="top_nav"> <attr name="title" /> </declare-styleable>