title: Android Eclipse Graphical Layout Issues
body: <p>I working on an android app that has already been built, and i am adding a feature. In the app we have a subclass of webview that is used.  When i try to use the graphical layout editor, i get an error that reads</p>
  
  <pre><code>com.android.layoutlib.bridge.MockView cannot be cast to android.view.ViewGroup
  Exception details are logged in Window &gt; Show View &gt; Error Log
  The following classes could not be instantiated:
  - com.my.web.view.WebView (Open Class, Show Error Log)
  See the Error Log (Window &gt; Show View) for more details.
  Tip: Use View.isInEditMode() in your custom views to skip code when shown in Eclipse
  </code></pre>
  
  <p>Here's what's in the error log</p>
  
  <pre><code>java.lang.ClassCastException: com.android.layoutlib.bridge.MockView cannot be cast to android.view.ViewGroup
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:624)
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:626)
  at android.view.LayoutInflater.inflate(LayoutInflater.java:408)
  at android.view.LayoutInflater.inflate(LayoutInflater.java:296)
  at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:279)
  at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:318)
  at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:325)
  at com.android.ide.eclipse.adt.internal.editors.layout.gle2.RenderService.createRenderSession(RenderService.java:372)
  at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.renderWithBridge(GraphicalEditorPart.java:1361)
  at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.recomputeLayout(GraphicalEditorPart.java:1115)
  at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.activated(GraphicalEditorPart.java:941)
  at com.android.ide.eclipse.adt.internal.editors.layout.LayoutEditorDelegate.delegatePageChange(LayoutEditorDelegate.java:450)
  at com.android.ide.eclipse.adt.internal.editors.common.CommonXmlEditor.pageChange(CommonXmlEditor.java:358)
  at org.eclipse.ui.part.MultiPageEditorPart.setActivePage(MultiPageEditorPart.java:1067)
  at org.eclipse.ui.forms.editor.FormEditor.setActivePage(FormEditor.java:607)
  at com.android.ide.eclipse.adt.internal.editors.AndroidXmlEditor.selectDefaultPage(AndroidXmlEditor.java:380)
  at com.android.ide.eclipse.adt.internal.editors.AndroidXmlEditor.addPages(AndroidXmlEditor.java:285)
  at com.android.ide.eclipse.adt.internal.editors.common.CommonXmlEditor.addPages(CommonXmlEditor.java:283)
  at org.eclipse.ui.forms.editor.FormEditor.createPages(FormEditor.java:138)
  at org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:348)
  at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:670)
  at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465)
  at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
  at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:289)
  at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2863)
  at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2768)
  at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2760)
  at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2711)
  at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
  at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2707)
  at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2691)
  at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2682)
  at org.eclipse.ui.ide.IDE.openEditor(IDE.java:651)
  at org.eclipse.ui.ide.IDE.openEditor(IDE.java:610)
  at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:365)
  at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:168)
  at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:229)
  at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:208)
  at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:274)
  at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:250)
  at org.eclipse.jdt.internal.ui.packageview.PackageExplorerActionGroup.handleOpen(PackageExplorerActionGroup.java:373)
  at org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart$4.open(PackageExplorerPart.java:526)
  at org.eclipse.ui.OpenAndLinkWithEditorHelper$InternalListener.open(OpenAndLinkWithEditorHelper.java:48)
  at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:845)
  at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
  at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
  at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
  at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:843)
  at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1131)
  at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1235)
  at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:264)
  at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:258)
  at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:298)
  at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
  at org.eclipse.swt.widgets.Display.sendEvent(Display.java:3783)
  at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1375)
  at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1398)
  at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1383)
  at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1195)
  at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3629)
  at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3284)
  at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
  at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
  at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
  at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
  at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
  at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
  at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
  at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
  at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
  at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
  at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
  at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
  at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  at java.lang.reflect.Method.invoke(Method.java:597)
  at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
  at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
  at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
  </code></pre>
  
  <p>I've seen a number of posts with similar problems but none of those solutions work for me. I've tried changing my rendering mode to the various different versions of the android os to no avail.  Also I am using the fully qualified path to my object in the xml.  Are there any other solutions to this?  Those were to two that i found the most.  </p>
  
  <p>Thanks in advanced.</p>