我从ImageView继承了一个类myImageView在.java文件使用 private myImageView iv;iv = (myImageView)findViewById(R.id.imageview);程序会崩溃,不知道是什么原因?将xml文件中的 <ImageView  /> 改成  <myImageView  /> 也是一样

解决方案 »

  1.   

    xml 中的话:
      iv = (myImageView)findViewById(R.id.imageview); 是可以找到的,你要   <com.xxx.xx.myImageView  /> 加上你的包名,确保能找到。自定义的话:
    ImageView继承了一个类myImageView : MyImageView view = new MyImageView(); 
    顺便说一下:下次可以把你的异常信息贴出来,会更容易快速定位你的错误。
      

  2.   

    这是我继承的另外一个类(vatFrameLayout)出现的错误07-08 07:16:46.518: E/AndroidRuntime(4350): FATAL EXCEPTION: main
    07-08 07:16:46.518: E/AndroidRuntime(4350): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.newvatclassexample/com.example.newvatclassexample.MainActivity}: java.lang.ClassCastException: android.widget.FrameLayout cannot be cast to com.example.newvatclassexample.vatFrameLayout
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.app.ActivityThread.access$600(ActivityThread.java:141)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.os.Handler.dispatchMessage(Handler.java:99)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.os.Looper.loop(Looper.java:137)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.app.ActivityThread.main(ActivityThread.java:5041)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at java.lang.reflect.Method.invokeNative(Native Method)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at java.lang.reflect.Method.invoke(Method.java:511)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at dalvik.system.NativeStart.main(Native Method)
    07-08 07:16:46.518: E/AndroidRuntime(4350): Caused by: java.lang.ClassCastException: android.widget.FrameLayout cannot be cast to com.example.newvatclassexample.vatFrameLayout
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at com.example.newvatclassexample.MainActivity.onCreate(MainActivity.java:23)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.app.Activity.performCreate(Activity.java:5104)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
    07-08 07:16:46.518: E/AndroidRuntime(4350):  ... 11 more
      

  3.   

    xml里写的时候,要把前面的包名加上