34

我整个晚上都在尝试这个,但无济于事,所以我将从头开始列出我的确切步骤。

  • 我已经通过 SDK 管理器安装了支持包。
  • 我创建了一个新的 android 项目,我称之为“testinggridlayout”。
  • 我选择的构建目标是 Android 2.1 API 7。
  • 项目清单

这将是我希望能够在其上创建网格布局的项目。


要设置支持包,这些是我的步骤:

  • 右键单击我刚刚创建的项目并选择 - 新建 - Android 项目
  • 将其命名为 GridLayout 并选择从现有源中创建项目并浏览至:

android-sdks\extras\android\support\v7\gridlayout

  • 右键单击我的testinggridlayout项目,然后单击属性:
  • 在 Java Build Path 下 - 选择 Projects 选项卡,然后选择 Add。
  • 选择我的项目“GridLayout”并单击“确定”,然后单击“确定”。

在此刻

如果我手动进入 main.xml 布局,请插入以下代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<GridLayout
    android:background="#FFFFFF"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:columnCount="8"
    android:rowCount="5" >

</GridLayout>

</LinearLayout>

我得到错误:

找不到以下类: - GridLayout(修复构建路径,编辑 XML)。

如果我改变

<GridLayout> & </GridLayout>

<android.support.v7.widget.GridLayout> & </android.support.v7.widget.Gridlayout>

我收到同样的错误:

找不到以下类: - android.support.v7.widget.GridLayout(修复构建路径,编辑 XML)。

那时我在我的项目中创建了一个名为“libs”的文件夹。

然后我将GridLayout项目中libs下的android-support-v7-GridLayout.jar文件复制到了这个文件夹中。

我在“testinggridlayout”中的“libs”文件夹中右键单击此文件,然后选择“添加到构建路径”。

然后我的错误变为:

无法实例化以下类: - android.support.v7.widget.GridLayout(打开类,显示错误日志)

我错过了/不应该做哪些事情?

4

7 回答 7

15

我使用 intellij idea,所以这不完全是你的情况,但也许它会有所帮助。我整天都在努力设置它,然后它突然起作用了。我将描述我的设置,以便您进行比较:

  1. 将 GridLayout 项目设置为库项目。设置示例可以在此处的 android 开发者网站上找到
  2. 像往常一样设置你的项目,参考上面链接中描述的库项目。
  3. 将库添加到您的主项目。我使用了最新android-support-v13.jar 的和 android-support-v7-gridlayout.jar. 注意:我在项目中使用了 v7 支持库,而不是库项目。事实上,现在检查它 - 在库项目中我没有引用v7 支持。
  4. 在布局文件中使用完整的包名:<android.support.v7.widget.GridLayout />而不是<GridLayout />
  5. 使用自定义命名空间,如下所示:xmlns:grid="http://schemas.android.com/apk/res-auto"在您的布局文件中使用标签中库项目中定义的自定义属性,例如grid:columnCount

希望这可以帮助。我目前正在尝试,甚至不确定这是我需要的东西:)

于 2012-04-19T19:10:29.883 回答
10

如果有人遇到同样的问题,这里有一个对我有用的解决方案:

将项目导入工作区后,您需要使用 Android 选项卡而不是 Java 构建路径将其添加为依赖项

项目 -> 属性 -> Android -> 库 -> [添加...]

我还勾选了是图书馆。

于 2013-02-06T15:53:55.337 回答
5

从文件夹Android_SDK_folder \extras\android\support\v7\gridlayout\libs复制android-support-v7-gridlayout.jar。然后,将其粘贴到您的项目MyAndroidProject\libs文件夹中。

于 2013-11-30T08:48:09.517 回答
4

support-v7-gridlayout.jar 修订版 7 存在一些问题。现在它已更新到修订版 8,请参阅兼容性库,只需更新它,它就会工作。不要忘记更改所有库和依赖项的支持包,否则会出现不匹配错误。

于 2012-05-01T18:52:18.897 回答
2

像这样编辑您的项目(和库项目)的 .classpath 文件:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>
于 2013-09-10T06:52:49.190 回答
1

除了上面列出的建议之外,我还必须做一件事才能在 Eclipse 中预览网格布局:

  1. 右键单击项目 android-support-v7-gridlayout。
  2. 转到属性 > Java 构建路径 > 库
  3. 将 libs/android-support-v7-gridlayout.jar 添加到库中。
  4. 转到 Order and Export 并检查上一步中添加的 jar。

希望能帮助到你!

于 2013-06-11T02:04:49.887 回答
0

要使 7v 示例 (/extras/android/support/samples/Support7Demos/) 工作,请执行以下操作:

  1. 从这里导入所有项目 /extras/android/support/v7
  2. 为 Support7Demos 项目创建 /libs 目录
  3. 将所有 *.jar 文件放在这些项目的 /libs 目录中,并将它们添加到 Support7Demos/libs
于 2014-03-14T11:51:38.167 回答