3

我想将 zxing 集成到我的应用程序中。我正在导入项目,将其设置为库,将目标更改为 API 7,下载 zxing-core-2.2.jar,将其复制到 /libs 并将此 jar 作为库添加到 Java Building Path 中。

但是还是有一些错误:

Zxing 错误 它们都在 switch 语句中并且依赖于 R.id。例如:

switch (item.getItemId()) {
  case R.id.menu_share:

Eclipse 错误描述:

case 表达式必须是常量表达式

有一个信息对话框:

在此处输入图像描述 知道我做错了什么或如何解决吗?

4

2 回答 2

1

正如您在显示的对话框中所解释的, R.id.menu_settings 现在“不再是常量”,这意味着它不能在开关中使用。该对话框还提供了解决方案,而不是

switch (item.getItemId()) {
  case R.id.menu_share:
      //do something
      break;
  case xxx:
      ...
}

你应该做这个:

if(item.getItemId()==R.id.menu_share) {
      //do something
} else if (item.getItemId()==xxx) {
      //do something
}

只需按照说明进行操作,您就可以了。

于 2013-08-03T11:51:57.730 回答
1

问题是 zxing 的源不打算用作库。请参阅下面线程中 Sean 的答案。

Zxing 项目作为项目中的库不会构建

我尝试在这个 CaptureActivity 项目中限制我的应用程序,添加我的活动和资源并相应地修改其清单文件。

于 2013-10-24T13:44:58.100 回答