Skip to content
This repository has been archived by the owner on Jan 27, 2023. It is now read-only.

RoundedImageView could not be instantiated for rendering in Layout Editor #44

Closed
shekibobo opened this issue May 27, 2014 · 7 comments
Closed

Comments

@shekibobo
Copy link

I get the following error when I attempt to load the custom view RoundedImageView in Android Studio (0.5.8) layout editor:

Rendering Problems
The following classes could not be instantiated:
    - com.makeramen.RoundedImageView (Open Class, Show Exception)

Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when shown in the IDE

Exception Details
java.lang.UnsupportedClassVersionError: com/makeramen/RoundedImageView : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:471)
    at com.intellij.util.lang.UrlClassLoader._defineClass(UrlClassLoader.java:189)
    at com.intellij.util.lang.UrlClassLoader.defineClass(UrlClassLoader.java:185)
    at com.intellij.util.lang.UrlClassLoader.findClass(UrlClassLoader.java:146)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at com.android.tools.idea.rendering.RenderClassLoader.loadClassFromJar(RenderClassLoader.java:76)
    at org.jetbrains.android.uipreview.ProjectClassLoader.loadClassFromModuleOrDependency(ProjectClassLoader.java:106)
    at org.jetbrains.android.uipreview.ProjectClassLoader.load(ProjectClassLoader.java:87)
    at com.android.tools.idea.rendering.RenderClassLoader.findClass(RenderClassLoader.java:54)
    at org.jetbrains.android.uipreview.ProjectClassLoader.findClass(ProjectClassLoader.java:54)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:174)
    at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:97)
    at com.android.tools.idea.rendering.LayoutlibCallback.loadView(LayoutlibCallback.java:172)
    at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:207)
    at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:135)
    at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:755)
    at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:727)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:373)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:399)
    at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:336)
    at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:332)
    at com.android.tools.idea.rendering.RenderService$3.compute(RenderService.java:555)
    at com.android.tools.idea.rendering.RenderService$3.compute(RenderService.java:544)
    at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:932)
    at com.android.tools.idea.rendering.RenderService.createRenderSession(RenderService.java:544)
    at com.android.tools.idea.rendering.RenderService.render(RenderService.java:671)
    at com.intellij.android.designer.designSurface.AndroidDesignerEditorPanel$6.run(AndroidDesignerEditorPanel.java:483)
    at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:320)
    at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:310)
    at com.intellij.util.ui.update.MergingUpdateQueue$2.run(MergingUpdateQueue.java:254)
    at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:269)
    at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:227)
    at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:217)
    at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
    at com.intellij.util.Alarm$Request$1.run(Alarm.java:327)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:695)

From what I've found on Stack Overflow, at a minimum to make this work, the setup code needs to be wrapped in a check if it's not in edit mode.

@vinc3m1
Copy link
Owner

vinc3m1 commented May 27, 2014

Was this solved by the xmlns?

@shekibobo
Copy link
Author

No, this issue appears to be unrelated to #45.

@shekibobo
Copy link
Author

screen shot 2014-05-27 at 12 10 48 pm

@vinc3m1
Copy link
Owner

vinc3m1 commented Jun 6, 2014

Hm, that error looks like it's related to a java version error. I can try to release the next version for java 6 for compatibility

@vinc3m1
Copy link
Owner

vinc3m1 commented Aug 12, 2014

@shekibobo is this still happening in the latest AS?

@shekibobo
Copy link
Author

Initially after replacing the ImageView with com.makeramen.RoundedImageView, I received the following error in the layout editor, but have not seen it since:

java.lang.ClassNotFoundException: com.makeramen.R$styleable
    at org.jetbrains.android.uipreview.ProjectClassLoader.load(ProjectClassLoader.java:94)
    at com.android.tools.idea.rendering.RenderClassLoader.findClass(RenderClassLoader.java:56)
    at org.jetbrains.android.uipreview.ProjectClassLoader.findClass(ProjectClassLoader.java:56)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at com.makeramen.RoundedImageView.<init>(RoundedImageView.java:56)
    at com.makeramen.RoundedImageView.<init>(RoundedImageView.java:50)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:375)
    at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:100)
    at com.android.tools.idea.rendering.LayoutlibCallback.loadView(LayoutlibCallback.java:172)
    at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:207)
    at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:132)
    at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:802)
    at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:778)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:500)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:381)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:400)
    at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:329)
    at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:332)
    at com.android.tools.idea.rendering.RenderService$3.compute(RenderService.java:575)
    at com.android.tools.idea.rendering.RenderService$3.compute(RenderService.java:564)
    at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:932)
    at com.android.tools.idea.rendering.RenderService.createRenderSession(RenderService.java:564)
    at com.android.tools.idea.rendering.RenderService.render(RenderService.java:691)
    at com.intellij.android.designer.designSurface.AndroidDesignerEditorPanel$6.run(AndroidDesignerEditorPanel.java:483)
    at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:320)
    at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:310)
    at com.intellij.util.ui.update.MergingUpdateQueue$2.run(MergingUpdateQueue.java:254)
    at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:269)
    at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:227)
    at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:217)
    at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
    at com.intellij.util.Alarm$Request$1.run(Alarm.java:327)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:695)

So from what I can tell it appears to be fixed. Thanks!

@ruhanijeb
Copy link

@vinc3m1
I am getting below error when try to implement this .

UNHANDLED EXCEPTION:
[MonoDroid] Android.Views.InflateException: Binary XML file line #1: Binary XML file line #1: Error inflating class com.makeramen.roundedimageview.RoundedImageView ---> Android.Views.InflateException: Binary XML file line #1: Error inflating class com.makeramen.roundedimageview.RoundedImageView ---> Java.Lang.Reflect.InvocationTargetException: Exception of type 'Java.Lang.Reflect.InvocationTargetException' was thrown. ---> Java.Lang.NoClassDefFoundError: Failed resolution of: Lcom/makeramen/roundedimageview/R$styleable; ---> Java.Lang.ClassNotFoundException: Didn't find class "com.makeramen.roundedimageview.R$styleable" on path: DexPathList[[zip file "/data/app/com.dharm.roundview-O3fRH_QINgCJR69fIVU_bw==/base.apk"],nativeLibraryDirectories=[/data/app/com.dharm.roundview-O3fRH_QINgCJR69fIVU_bw==/lib/x86, /system/fake-libs, /data/app/com.dharm.roundview-O3fRH_QINgCJR69fIVU_bw==/base.apk!/lib/x86, /system/lib, /vendor/lib]]
[MonoDroid] --- End of inner exception stack trace ---
[chatty] uid=10100(com.dharm.roundview) identical 2 lines
[MonoDroid] --- End of inner exception stack trace ---
[MonoDroid] at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualVoidMethod (Java.Interop.JniObjectReference instance, Java.Interop.JniObjectReference type, Java.Interop.JniMethodInfo method, Java.Interop.JniArgumentValue* args) [0x00089] in <034d4a9852dd45bea9353cc7776c99f0>:0
[MonoDroid] at Java.Interop.JniPeerMembers+JniInstanceMethods.InvokeVirtualVoidMethod (System.String encodedMember, Java.Interop.IJavaPeerable self, Java.Interop.JniArgumentValue* parameters) [0x0005d] in <034d4a9852dd45bea9353cc7776c99f0>:0
[MonoDroid] at Android.App.Activity.SetContentView (System.Int32 layoutResID) [0x00022] in :0
[MonoDroid] at roundview.MainActivity.OnCreate (Android.OS.Bundle savedInstanceState) [0x00009] in /Users/dharmender/Projects/roundview/roundview/MainActivity.cs:25
[MonoDroid] at Android.App.Activity.n_OnCreate_Landroid_os_Bundle_ (System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_savedInstanceState) [0x00011] in :0
[MonoDroid] at (wrapper dynamic-method) System.Object.4(intptr,intptr,intptr)
[MonoDroid] --- End of managed Android.Views.InflateException stack trace ---
[MonoDroid] android.view.InflateException: Binary XML file line #1: Binary XML file line #1: Error inflating class com.makeramen.roundedimageview.RoundedImageView
[MonoDroid] Caused by: android.view.InflateException: Binary XML file line #1: Error inflating class com.makeramen.roundedimageview.RoundedImageView
[MonoDroid] Caused by: java.lang.reflect.InvocationTargetException
[MonoDroid] at java.lang.reflect.Constructor.newInstance0(Native Method)
[MonoDroid] at java.lang.reflect.Constructor.newInstance(Constructor.java:334)
[MonoDroid] at android.view.LayoutInflater.createView(LayoutInflater.java:647)
[MonoDroid] at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:790)
[MonoDroid] at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)
[MonoDroid] at android.view.LayoutInflater.rInflate(LayoutInflater.java:863)
[MonoDroid] at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
[MonoDroid] at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
[MonoDroid] at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
[MonoDroid] at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
[MonoDroid] at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:419)
[MonoDroid] at android.app.Activity.setContentView(Activity.java:2669)
[MonoDroid] at md5c083c2735bea61cb3dc6e6f7c0287fc9.MainActivity.n_onCreate(Native Method)
[MonoDroid] at md5c083c2735bea61cb3dc6e6f7c0287fc9.MainActivity.onCreate(MainActivity.java:29)
[MonoDroid] at android.app.Activity.performCreate(Activity.java:7009)
[MonoDroid] at android.app.Activity.performCreate(Activity.java:7000)
[MonoDroid] at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
[MonoDroid] at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2731)
[MonoDroid] at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
[MonoDroid] at android.app.ActivityThread.-wrap11(Unknown Source:0)
[MonoDroid] at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
[MonoDroid] at android.os.Handler.dispatchMessage(Handler.java:106)
[MonoDroid] at android.os.Looper.loop(Looper.java:164)
[MonoDroid] at android.app.ActivityThread.main(ActivityThread.java:6494)
[MonoDroid] at java.lang.reflect.Method.invoke(Native Method)
[MonoDroid] at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
[MonoDroid] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
[MonoDroid] Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/makeramen/roundedimageview/R$styleable;
[MonoDroid] at com.makeramen.roundedimageview.RoundedImageView.(RoundedImageView.java:92)
[MonoDroid] at com.makeramen.roundedimageview.RoundedImageView.(RoundedImageView.java:86)
[MonoDroid] ... 27 more
[MonoDroid] Caused by: java.lang.ClassNotFoundException: Didn't find class "com.makeramen.roundedimageview.R$styleable" on path: DexPathList[[zip file "/data/app/com.dharm.roundview-O3fRH_QINgCJR69fIVU_bw==/base.apk"],nativeLibraryDirectories=[/data/app/com.dharm.roundview-O3fRH_QINgCJR69fIVU_bw==/lib/x86, /system/fake-libs, /data/app/com.dharm.roundview-O3fRH_QINgCJR69fIVU_bw==/base.apk!/lib/x86, /system/lib, /vendor/lib]]
[MonoDroid] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125)
[MonoDroid] at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
[MonoDroid] at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
[MonoDroid] ... 29 more

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants