膨胀二进制XML文件时发生java错误
我正在尝试用xml扩展自定义类(scrollView),然后这个错误显示有人能解释一下我的代码是怎么回事吗
我试图在特定的滚动点禁用滚动,然后再次启用它
partnerScrollView = (LockableScrollView) findViewById(R.id.partnerScrollView);
<com.mibag.utils.LockableScrollView
安卓:id="@+id/partnerScrollView"
安卓:layout_width="match_parent"
安卓:layout_height="match_parent"
安卓:fillViewport="true" >
</com.mibag.utils.LockableScrollView>
08-09 15:38:03.270: E/AndroidRuntime(22013): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mibag/com.mibag.PartnerListDetail_Activity}: 安卓.view.InflateException: Binary XML file line #9: Error inflating class com.mibag.utils.LockableScrollView
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.app.ActivityThread.performLaunchActivity(ActivityThread.java:2345)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2405)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.app.ActivityThread.access$800(ActivityThread.java:149)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.app.ActivityThread$H.handleMessage(ActivityThread.java:1324)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.os.Handler.dispatchMessage(Handler.java:102)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.os.Looper.loop(Looper.java:211)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.app.ActivityThread.main(ActivityThread.java:5317)
08-09 15:38:03.270: E/AndroidRuntime(22013): at java.lang.reflect.Method.invoke(Native Method)
08-09 15:38:03.270: E/AndroidRuntime(22013): at java.lang.reflect.Method.invoke(Method.java:372)
08-09 15:38:03.270: E/AndroidRuntime(22013): at com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)
08-09 15:38:03.270: E/AndroidRuntime(22013): at com.安卓.internal.os.ZygoteInit.main(ZygoteInit.java:811)
08-09 15:38:03.270: E/AndroidRuntime(22013): Caused by: 安卓.view.InflateException: Binary XML file line #9: Error inflating class com.mibag.utils.LockableScrollView
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.view.LayoutInflater.createView(LayoutInflater.java:616)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.view.LayoutInflater.rInflate(LayoutInflater.java:806)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.view.LayoutInflater.inflate(LayoutInflater.java:504)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.view.LayoutInflater.inflate(LayoutInflater.java:414)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.view.LayoutInflater.inflate(LayoutInflater.java:365)
08-09 15:38:03.270: E/AndroidRuntime(22013): at com.安卓.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:381)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.app.Activity.setContentView(Activity.java:2144)
08-09 15:38:03.270: E/AndroidRuntime(22013): at com.mibag.PartnerListDetail_Activity.onCreate(PartnerListDetail_Activity.java:201)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.app.Activity.performCreate(Activity.java:5933)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
08-09 15:38:03.270: E/AndroidRuntime(22013): ... 10 more
08-09 15:38:03.270: E/AndroidRuntime(22013): Caused by: java.lang.NoSuchMethodException: <init> [class 安卓.content.Context, interface 安卓.util.AttributeSet]
08-09 15:38:03.270: E/AndroidRuntime(22013): at java.lang.Class.getConstructor(Class.java:531)
08-09 15:38:03.270: E/AndroidRuntime(22013): at java.lang.Class.getConstructor(Class.java:495)
08-09 15:38:03.270: E/AndroidRuntime(22013): at 安卓.view.LayoutInflater.createView(LayoutInflater.java:580)
# 1 楼答案
我确实解决了它,它是在这行: 08-09 15:38:03.270:E/AndroidRuntime(22013):由java引起。lang.NoSuchMethodException:[类android.content.Context,接口android.util.AttributeSet] 我必须在自定义类中添加此构造函数