2

我是 Android 开发的新手,所以这可能是一个简单的问题。抱歉,如果是的话-我花了很多时间搜索,但找不到任何有用的东西。

我正在尝试在我的项目中使用 GridLayout,但最好使用 Android 支持库,这样我就可以针对较低版本的 API。当我将 GridLayout 拖到图形布局设计器中时,会弹出一条消息,询问我需要一个用于 14 之前的 API 版本的兼容性库,并询问我是否要安装这个库。我点击“安装”并让 Eclipse 完成它的工作,但 Eclipse 图形布局设计器中出现错误 The following classes could not be instantiated: - android.support.v7.widget.GridLayout See the Error Log ( Window > Show View) for more details.:(截图

从错误日志中, android.support.v7.widget.GridLayout failed to instantiate. 这是堆栈跟踪

我对这个错误的搜索出现了这个 SO thread,这似乎很有希望;我检查了我的 Java、Eclipse 和 ADT 版本,但似乎都是最新的(Java 7 update 17、Eclipse Juno 版本、ADT 21.1)。随着更新检查的结束,我查看了那个 SO 用户如何设置他的项目:gridlayout 的库项目,主项目中对该库的项目引用,以及复制到主项目库中的 gridlayout jar文件夹。在 Eclipse “安装兼容性库”消息之后,已经为我创建了一个 gridlayout 库项目,但尚未设置项目引用并且尚未复制 gridlayout jar。我做了这两件事,但 GridLayout 仍然无法实例化。

我继续搜索,发现另一个 SO 线程。尽管该线程没有使用 Eclipse,但我尝试将答案转换为 Eclipse 等价物,这与上面的线程给出的大致相同。(将 gridlayout jar 复制到项目的 libs 文件夹,从 gridlayout 创建一个库项目,并从主项目中添加对该库项目的项目引用。)我还验证了 gridlayout jar 位于主项目的构建路径上。(截图

我还尝试按照相关的Styling Android blogpost中的说明进行操作,但情况更糟:当我尝试将 GridLayout 拖到我的项目中时,它会引发两个错误,一个RelativeLayoutRule.onDropped() failed: java.lang.NullPointerExceptionwith this stack trace和一个Initializing project statewith this stack trace。基于“初始化项目状态”堆栈跟踪中提到的 IOException,我推测问题可能是我的 Android SDK 安装位置:%APPDATA%\Local\Android. 我终于尝试卸载 SDK 并重新安装它,%PROGRAMFILES%\Android但没有任何运气。

我真的不知道从这里去哪里。如果有人能给我一个正确方向的指示,我将不胜感激!

4

2 回答 2

2

尝试:File->Import->Existing Android code into workspace 指定 android-sdk-[platform]/extras/android/support/v7/gridlayout

您需要将 GridLayout 项目作为 Android 库项目导入才能正常工作。

于 2013-04-05T05:42:17.017 回答
1

我的意思是清除您的构建路径...

试试这个:

右键单击您的项目-> 属性-> java 构建路径-> 顺序并导出其中勾选所有选项

于 2013-04-04T18:33:19.627 回答