25

ほとんどのメニューと画面で GridLayout を使用する Android プロジェクトがあります。ただし、問題は GridLayout が API 14 以降でサポートされていることです。

アプリケーションを古いバージョンの Android でも利用できるようにしたいので、API 7 までのサポートを追加する Android 独自のサポート ライブラリGridLayoutを使用しようとしました。これはまさに私が探していたものでしたが、私の人生ではできません。それを機能させます。私はこれらすべての説明とアイデアを試しました:

  1. Androidの公式説明書
  2. 解決策 1
  3. 解決策 2
  4. 解決策 3
  5. 解決策 4
  6. 解決策 5

もっと...

何を、どのように行うか、または使用する IDE (Eclipse ADT または Android Studio) に関係なく、次の行に沿ってレイアウト XML で常にエラーが発生します。

The following classes could be instantiated:  - android.support.v7.widget.GridLayout

With either one of these exceptions showing in the error log:

1. android.content.res.Resources$NotFoundException: Could not resolve value 0x7F080000
2. java.lang.classnotfoundexception: android.support.v7.gridlayout.R$dimen

編集:参考までに、これはサポートグリッドレイアウトを作成するために使用しているものです(Androidサンプルプログラムから直接取得):

<android.support.v7.widget.GridLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/blue"
    android:padding="10dip"
    app:columnCount="4"
    >
    <TextView
        android:text="@string/string_test"
    />
    <EditText
        app:layout_gravity="fill_horizontal"
        app:layout_column="0"
        app:layout_columnSpan="4"
    />
    <Button
        android:text="@string/button_test"
        app:layout_column="2"
    />
</android.support.v7.widget.GridLayout>

上記の解決策のいずれも機能しないということは、何が間違っている可能性がありますか? 元のコードに問題がある可能性がありますか?

どんな助けでも大歓迎です

4

5 に答える 5

52

Gradle を使用してみて、build.gradle ファイルの最後に次のセクションを追加します。

dependencies {
  implementation 'com.android.support:gridlayout-v7:28.0.0'
  implementation 'com.android.support:appcompat-v7:28.0.0'
}

次に、assembleDebug gradle タスクを実行します。

于 2013-12-27T15:34:23.990 に答える
4

Android Studio の場合:

  • build.gradle に移動して、次を追加します。

    compile 'com.android.support:appcompat-v7:18.0.+'
    

    あなたの依存関係で。

  • AVD マネージャーの左側にあるアイコンをクリックして、プロジェクトを同期します。ライブラリを実装します

  • そしてさらに試みる

Eclipse でこれを試してみてください: Gridview v7 support for old api android.support.v7.widget.Gridlayout failed to instaniate

于 2013-08-29T08:52:00.423 に答える
2

http://developer.android.com/tools/support-library/features.html#v7-gridlayoutを参照してください。gridlayout を eclipse プロジェクトとしてインポートしてから、ライブラリ プロジェクトとしてプロジェクトに追加し、ビルドを確認してください。パスにはjarが含まれています。

于 2014-01-09T00:45:20.397 に答える