问题描述:
目录结构:
然后在布局上加上
xmlns:test="http://schemas.Android.com/apk/res/com.example.myviewdemo.view"
结果报error: No resource identifier found for attribute ‘XXX’ in package 'XXX'
查看了代码 TypedArray a = context.obtainStyledAttributes(attribiteSet, R.styleable.myview); 也加了,其他的类名称也都没错,还是报错
解决方法:
后来发现就是xmlns:test="http://schemas.android.com/apk/res/com.example.myviewdemo.view" 这句的红色部分出错了
这句的组成应该是AndroidManifest.xml里的
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myviewdemo"
android:versionCode="1"
android:versionName="1.0" >
红色部分组合起来的,只要把布局里的xmlns:test="http://schemas.android.com/apk/res/com.example.myviewdemo.view" 改为 xmlns:test="http://schemas.android.com/apk/res/com.example.myviewdemo"就可以了 (这里并不是使view所在类的路径注意)