adt无法解析drawable资源的解决办法

adt无法解析drawable资源的解决办法:

错误如下:

eclipse.buildId=M20120208-0800
java.version=1.6.0_31
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=zh_CN
Framework arguments:  -product org.eclipse.epp.package.java.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product

Error
Tue May 15 10:15:23 CST 2012
rss_news_item.xml: Failed to parse file E:\work\aaa\res\drawable\list_item.xml

org.xmlpull.v1.XmlPullParserException: Binary XML file line #4: <item> tag requires a 'drawable' attribute or child tag defining a drawable
 at android.graphics.drawable.StateListDrawable.inflate(StateListDrawable.java:165)
 at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:788)
 at android.graphics.drawable.Drawable.createFromXml(Drawable.java:729)
 at com.android.layoutlib.bridge.impl.ResourceHelper.getDrawable(ResourceHelper.java:208)
 at com.android.layoutlib.bridge.android.BridgeTypedArray.getDrawable(BridgeTypedArray.java:731)
 at android.view.View.<init>(View.java:1850)
 at android.view.View.<init>(View.java:1799)
 at android.view.ViewGroup.<init>(ViewGroup.java:284)
 at android.widget.LinearLayout.<init>(LinearLayout.java:92)
 at sun.reflect.GeneratedConstructorAccessor36.newInstance(Unknown Source)
 at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
 at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
 at android.view.LayoutInflater.createView(LayoutInflater.java:500)
 at com.android.layoutlib.bridge.android.BridgeInflater.onCreateView(BridgeInflater.java:84)
 at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
 at com.android.layoutlib.bridge.android.BridgeInflater.createViewFromTag(BridgeInflater.java:129)
 at android.view.LayoutInflater.inflate(LayoutInflater.java:385)
 at android.view.LayoutInflater.inflate(LayoutInflater.java:296)
 at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:278)
 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:1323)
 at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.recomputeLayout(GraphicalEditorPart.java:1077)
 at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart$ReloadListener.reloadLayoutSwt(GraphicalEditorPart.java:1539)
 at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart$ReloadListener.access$0(GraphicalEditorPart.java:1477)
 at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart$ReloadListener$1.run(GraphicalEditorPart.java:1471)
 at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
 at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
 at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4140)
 at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3757)
 at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
 at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
 at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
 at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
 at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
 at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
 at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
 at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
 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:344)
 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:622)
 at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
 at org.eclipse.equinox.launcher.Main.run(Main.java:1410)

 

解决方法:

在图形模式下打开资源文件,clean下project,关闭eclipse,然后重新打开eclipse,资源文件即可正常解析

open the layout in graphical layout editor.Clean the project.Keep the layout open in graphical editor, close eclipse and open it again.

The suggestion on comment #42 worked for me, in addition to removing the project library setting:

1. open the layout in graphical layout editor.

2. Clean the project.

3. Remove the project library setting.

4. Keep the layout open in graphical editor, close eclipse and open it again.

5. the layout should work now, you can check the project as library again.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值