Error inflating class错误
09-30 23:30:01.968: E/AndroidRuntime(14741): Caused by: java.lang.NoSuchMethodException: WaterBoxView(Context,AttributeSet)
09-30 23:30:01.968: E/AndroidRuntime(14741): at java.lang.Class.getMatchingConstructor(Class.java:643)
09-30 23:30:01.968: E/AndroidRuntime(14741): at java.lang.Class.getConstructor(Class.java:472)
09-30 23:30:01.968: E/AndroidRuntime(14741): at android.view.LayoutInflater.createView(LayoutInflater.java:480)
09-30 23:30:01.968: E/AndroidRuntime(14741): ... 29 more
重点在于最后一句。
.NoSuchMethodException: WaterBoxView(Context,AttributeSet)
也就是没有这个对应的方法(没有定义inflate需要的默认构造函数),下面我们就实现它。
1 public WaterBoxView(Context context, AttributeSet attrs) { 2 super(context, attrs); 3 LayoutInflater inflater = (LayoutInflater) context 5 .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 6 inflater.inflate(R.layout.water_box, this); 7 8 }
这样就行了。
作者:kissazi2
出处:http://www.cnblogs.com/kissazi2/
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。