Android工作室在构建项目时给出R错误

时间:2016-06-17 12:08:08

标签: android android-layout bitmap android-studio-2.0

在我的项目中,我使用Bitmap添加背景图像。当我使用第二个位图时,我的代码工作正常。一旦我膨胀第二个位图项目,在构建时开始给出R错误。 以下是我的代码:

@Override
public void surfaceCreated(SurfaceHolder holder) {

    bg = new Background(BitmapFactory.decodeResource(getResources(), R.drawable.imageOne));
    newbg = new AnotherClass(BitmapFactory.decodeResource(getResources(), R.drawable.imageTwo));

   // thread.setRunning(true);
   // thread.start();

}

我尝试过的事情:

  • 清除了Build Clean和终端的项目。
  • 重建项目。
  • 使用invalidate缓存重新启动。
  

管子破了              java.io.IOException:管道损坏              at sun.nio.ch.FileDispatcherImpl.write0(Native Method)              at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)              在sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)              at sun.nio.ch.IOUtil.write(IOUtil.java:65)              at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:471)              在com.android.ddmlib.JdwpPacket.write(JdwpPacket.java:179)              在com.android.ddmlib.Client.send(Client.java:654)              在com.android.ddmlib.jdwp.JdwpAgent.send(JdwpAgent.java:92)              在com.android.ddmlib.HandleHeap.sendREAQ(HandleHeap.java:349)              在com.android.ddmlib.Client.requestAllocationStatus(Client.java:517)              在com.android.ddmlib.DeviceMonitor.createClient(DeviceMonitor.java:573)              在com.android.ddmlib.DeviceMonitor.openClient(DeviceMonitor.java:545)              在com.android.ddmlib.DeviceMonitor.deviceClientMonitorLoop(DeviceMonitor.java:361)              在com.android.ddmlib.DeviceMonitor.access $ 100(DeviceMonitor.java:65)              在com.android.ddmlib.DeviceMonitor $ 1.run(DeviceMon ...

3 个答案:

答案 0 :(得分:2)

如你所说,你的代码工作正常,直到你添加第二个,所以问题在于你的第二个位图。

如果您使用过手动转换的图像,可能会发生这种情况,例如:image.jpg转换为image.png。

解决方案:将图像名称重构为原始名称并使用它。如果要转换它,请使用图像扩展名更改工具(许多可在线获取),然后在位图中使用它。

希望它能奏效。 :)

答案 1 :(得分:0)

如果您使用的是Android Studio,请尝试Build->Clean Project然后Build->Rebuild Project

答案 2 :(得分:0)

你应该关闭你的Android工作室或日食你正在使用的任何东西。如果没有解决您的错误,请执行adb kill-server && sleep 5 && adb devices,然后再次启动您的工具(Eclipse / Ant / AS)。