Java 膨胀二进制XML文件时出错

Java 膨胀二进制XML文件时出错,java,android,Java,Android,我正在尝试用xml扩展自定义类(scrollView),然后这个错误显示有人能解释一下我的代码是怎么回事吗 我试图在特定的滚动点禁用滚动,然后再次启用它 partnerScrollView = (LockableScrollView) findViewById(R.id.partnerScrollView); <com.mibag.utils.LockableScrollView android:id="@+id/partnerScrollView"

我正在尝试用xml扩展自定义类(scrollView),然后这个错误显示有人能解释一下我的代码是怎么回事吗

我试图在特定的滚动点禁用滚动,然后再次启用它

  partnerScrollView = (LockableScrollView) findViewById(R.id.partnerScrollView);


  <com.mibag.utils.LockableScrollView
        android:id="@+id/partnerScrollView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android: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}: android.view.InflateException: Binary XML file line #9: Error inflating class com.mibag.utils.LockableScrollView
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2345)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2405)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.app.ActivityThread.access$800(ActivityThread.java:149)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1324)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.os.Handler.dispatchMessage(Handler.java:102)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.os.Looper.loop(Looper.java:211)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.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.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)
    08-09 15:38:03.270: E/AndroidRuntime(22013): Caused by: android.view.InflateException: Binary XML file line #9: Error inflating class com.mibag.utils.LockableScrollView
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.view.LayoutInflater.createView(LayoutInflater.java:616)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:381)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.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 android.app.Activity.performCreate(Activity.java:5933)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
    08-09 15:38:03.270: E/AndroidRuntime(22013):    at android.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 android.content.Context, interface android.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 android.view.LayoutInflater.createView(LayoutInflater.java:580)
partnerScrollView=(LockableScrollView)findViewById(R.id.partnerScrollView);
08-09 15:38:03.270:E/AndroidRuntime(22013):java.lang.RuntimeException:无法启动活动组件信息{com.mibag/com.mibag.PartnerListDetail_activity}:android.view.InflateException:二进制XML文件行#9:膨胀类com.mibag.utils.LockableScrollView时出错
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2345)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2405)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.app.ActivityThread.access$800(ActivityThread.java:149)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1324)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.os.Handler.dispatchMessage(Handler.java:102)上
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.os.Looper.loop(Looper.java:211)上
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.app.ActivityThread.main(ActivityThread.java:5317)上
08-09 15:38:03.270:E/AndroidRuntime(22013):位于java.lang.reflect.Method.invoke(本机方法)
08-09 15:38:03.270:E/AndroidRuntime(22013):位于java.lang.reflect.Method.invoke(Method.java:372)
08-09 15:38:03.270:E/AndroidRuntime(22013):在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)
08-09 15:38:03.270:E/AndroidRuntime(22013):位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)
08-09 15:38:03.270:E/AndroidRuntime(22013):由以下原因引起:android.view.InflateException:二进制XML文件行#9:膨胀类com.mibag.utils.LockableScrollView时出错
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.view.LayoutInflater.createView(LayoutInflater.java:616)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.view.LayoutInflater.充气(LayoutInflater.java:504)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.view.LayoutInflater.充气(LayoutInflater.java:414)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.view.LayoutInflater.充气(LayoutInflater.java:365)
08-09 15:38:03.270:E/AndroidRuntime(22013):位于com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:381)
08-09 15:38:03.270:E/AndroidRuntime(22013):位于android.app.Activity.setContentView(Activity.java:2144)
08-09 15:38:03.270:E/AndroidRuntime(22013):在com.mibag.PartnerListDetail\u Activity.onCreate(PartnerListDetail\u Activity.java:201)
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.app.Activity.performCreate(Activity.java:5933)上
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)上
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
2008-09 15:38:03.270:E/AndroidRuntime(22013):。。。10多
08-09 15:38:03.270:E/AndroidRuntime(22013):由以下原因引起:java.lang.NoSuchMethodException:[类android.content.Context,接口android.util.AttributeSet]
08-09 15:38:03.270:E/AndroidRuntime(22013):位于java.lang.Class.getConstructor(Class.java:531)
08-09 15:38:03.270:E/AndroidRuntime(22013):在java.lang.Class.getConstructor(Class.java:495)中
08-09 15:38:03.270:E/AndroidRuntime(22013):在android.view.LayoutInflater.createView(LayoutInflater.java:580)上

我确实修复了它,它在这行: 08-09 15:38:03.270:E/AndroidRuntime(22013):由以下原因引起:java.lang.NoSuchMethodException:[类android.content.Context,接口android.util.AttributeSet] 我必须在自定义类中添加此构造函数

public LockableScrollView(Context context, AttributeSet attrs,
        int defStyleAttr, int defStyleRes) {
    super(context, attrs, defStyleAttr, defStyleRes);
    // TODO Auto-generated constructor stub
}

我确实解决了它,它是在这行: 08-09 15:38:03.270:E/AndroidRuntime(22013):由以下原因引起:java.lang.NoSuchMethodException:[类android.content.Context,接口android.util.AttributeSet] 我必须在自定义类中添加此构造函数

public LockableScrollView(Context context, AttributeSet attrs,
        int defStyleAttr, int defStyleRes) {
    super(context, attrs, defStyleAttr, defStyleRes);
    // TODO Auto-generated constructor stub
}