zoukankan      html  css  js  c++  java
  • 多个类定义attr属性重复的问题:Attribute "xxx" has already been defined

    有时候做自定义控件时就会遇到命名冲突,改变有冲突的名字自然是最直接有效的方式,但是感觉很傻。我搜了下别人的解决方案,觉得很值得借鉴。就是把重名的属性,独立出来写一下,然后在定义时直接写属性名字即可。

    比如:下面两个declare-styleable中icon重名了,我们就需要将icon独立出来写。

    <? xml version = "1.0" encoding = "utf-8" ?>
    < resources >
         < declare-styleable name= "PreferenceHeader" >
            <!-- Identifier value for the header. -->
            < attr name= "id" format = "integer"/>
            < attr name= "icon" format = "integer" />
            <!-- The fragment that is displayed when the user selects this item. -->
        </declare-styleable >
        < declare-styleable name= "Preference" >
            < attr name= "icon" format = "integer" />
            <!-- The key to store the Preference value. -->
            < attr name= "key" format = "string" />
        </declare-styleable >
    </ resources >

    icon独立定义,就可以被多次引用了。

    <? xml version = "1.0" encoding = "utf-8" ?>
    < resources >
         < attr name = "icon" format = "integer" />
    
         < declare-styleable name= "PreferenceHeader" >
            <!-- Identifier value for the header. -->
            < attr name= "id" format = "integer"/>
            < attr name= "icon" />
        </declare-styleable >
    
        < declare-styleable name= "Preference" >
            < attr name= "icon"  />
            <!-- The key to store the Preference value. -->
            < attr name= "key" format = "string" />
        </declare-styleable >
    
    </ resources >

    参考自:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0929/1718.html

  • 相关阅读:
    托管C++中System::String^ 转换为 char*
    Oracle-11:联合查询
    Oracle-10:分析函数
    Oracle-09:聚合函数
    Oracle-08:连接查询
    Oracle-07:别名,去重,子查询
    Oracle-06:DML语言数据表的操作
    Oracle-05:伪表dual
    Oracle-04:DDL语言数据表的操作
    Oracle-03:关系型数据库和非关系的数据库的各自优缺点与区别
  • 原文地址:https://www.cnblogs.com/tianzhijiexian/p/4110744.html
Copyright © 2011-2022 走看看