這篇是我看過寫的最好的一篇
Android xml资源文件中@、@android:type、@*、?、@+含义和区别
http://www.programgo.com/article/3549141171/
================================================================
以下為引用的內文
1、@[<package_name>:][<resource_type>/]<resource_name>和 @+[<package_name>:][<resource_type>/]<resource_name>, @android:id
简单的概括就是:
@[<resource_type/],resource_name>表示引用本应用中类型为reource_type的叫resource_name的资源。
@[<package_name>:][<resource_type/],resource_name>表示引用packgage_name这个包中类型为reource_type的叫resource_name的资源。这里的包一般就是framework中的android。
@+[<resource_type/],resource_name>表示新增加到本应用中类型为reource_type的叫resource_name的资源,通过aapt会自动生成一个整型的ID和它对应。
@+[<package_name>:][<resource_type/],resource_name>表示新增加到package_name的包中类型为reource_type的叫resource_name的资源,通过aapt会自动生成一个整型的ID和它对应。