Caused by: android.view.InflateException: Binary XML file line

今天自定义一个View,报这个错。如下所示

Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class 
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at android.view.LayoutInflater.createView(LayoutInflater.java:596)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at org.ila.dvd.VideoFloatingService.createFloatFadeView(VideoFloatingService.java:136)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at org.ila.dvd.VideoFloatingService.onStartCommand(VideoFloatingService.java:121)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2490)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	... 10 more
01-01 00:01:56.919: E/AndroidRuntime(2162): Caused by: java.lang.NoSuchMethodException: <init> [class android.content.Context, interface android.util.AttributeSet]
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at java.lang.Class.getConstructorOrMethod(Class.java:460)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at java.lang.Class.getConstructor(Class.java:431)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	at android.view.LayoutInflater.createView(LayoutInflater.java:561)
01-01 00:01:56.919: E/AndroidRuntime(2162): 	... 18 more

然后研究了半天,最终找到解决办法。就是在自定义的View中的构造方法中一定要有AttributeSet这个参数,如下所示。

public FadeDragView(Context context, AttributeSet attrs) {
		super(context, attrs);
		// TODO Auto-generated constructor stub
	}
这样就可以正常运行了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值