14

まず第一に、私はAndroidを初めて使用します。私はアプリをやっていて、HoloEverywhereというライブラリを実装しています。このライブラリは、themes.xmlでライブラリActionBarSherlockを使用します。ワークスペースActionBarSherlockにインポートし、HoloEverywhereに追加しました。次に、HoloEverywhereをプロジェクトに追加しましたが、それを使用しようとすると、エラーが発生します(ボタンを使用しようとしました)。

The following classes could not be instantiated:
- com.WazaBe.HoloEverywhere.ButtonHolo (Open Class, Show Error Log)
See the Error Log (Window > Show View) for more details.
Tip: Use View.isInEditMode() in your custom views to skip code when shown in Eclipse.

次のように、クラスのパスをレイアウトに配置します。

<com.WazaBe.HoloEverywhere.ButtonHolo
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/text" />

この問題を解決し、プロジェクトでこのライブラリを使用するにはどうすればよいですか?ありがとう:)PS。私の英語で申し訳ありませんが、私はそれがあまり良くないことを知っています。

4

4 に答える 4

40

以下の手順(ここのブログから取得)に従って追加しますActionBarSherlock

  1. .zip/.tgzを ダウンロードして解凍します
  2. 日食に行き、選択しますFile->New-> Android Project
  3. 選択Create project from existing sourceして、抽出browseしたフォルダ内のフォルダに移動しますlibraryAndroidBarSherlock
  4. ビルドターゲットは最新(14または15)である必要がありますが、minSdkVersionはそれより少なくすることができます(7または8)
  5. プレスFinish
  6. 新しく作成したプロジェクトを右クリックして、に移動しPropertiesます。
  7. Android見出しの下にLibrary、チェックボックス付きのセクションが表示されますIsLibrary。それがチェックされていることを確認してください。
  8. 見出しのAndroidBarSherlock 下に追加するプロジェクトで右クリック->プロパティを選択し、セクションでを選択します。AndroidLibraryAdd
  9. ライブラリが表示ActionBarSherlockされたら、これをプロジェクトに追加します
  10. 最後に、互換性サポートを使用していた場合は、ActionBarSherlockに含まれているため、そのjarを削除する必要があります。

以下の手順に従って、HoloEverywhereを追加します

  1. GitHubからコンピューターにZipをダウンロードします
  2. フォルダを解凍します
  3. 日食に行き、選択しますFile->New-> Android Project
  4. 選択Create project from existing sourceして、抽出browseしたHoloEverywhereLibフォルダ内のフォルダに移動します
  5. プレスFinish
  6. 新しく作成したプロジェクトを右クリックして、に移動しPropertiesます。
  7. Android見出しの下にLibrary、チェックボックス付きのセクションが表示されますIsLibrary。それがチェックされていることを確認し、を押しAddて、以前にライブラリを追加しましActionBarSherlockた。

次の手順に従ってHoloEverywhere、プロジェクトに追加します

  1. 新しいAndroidプロジェクトを作成する
  2. プロジェクトを右クリック->プロパティ->Android->追加、両方ActionBarSherlockを追加、HoloEverywhere
  3. 次のように変更Android Manifestします

    <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/Holo.Theme">

  4. main.xmlHoloテーマウィジェットを含めるように編集します。

  5. activity次のように変更します

    public class ChkActionBarSherlock extends SherlockActivity {
        @Override
         public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
        }
    
    }
    
于 2012-06-04T21:51:12.333 に答える
8

のようだ

android:theme="@style/Theme.HoloEverywhereDark.Sherlock"

エラーを引き起こします。

それを変更:

android:theme="@style/Holo.Theme"

ここの共鳴:

Github

正しい!

于 2012-12-11T03:06:38.763 に答える
4

プロジェクトで同じエラーが発生しました。これは私が行ったことです。HoloEverywhere(プロパティ-> android->ライブラリ)を右クリックしてリストからActionBarSherlockを削除し、[追加]をクリックしてActionBarSherlockプロジェクトを再度追加します。その後、クリーンアップします。プロジェクトとすべてのエラーが消えます。

于 2012-09-15T06:40:26.460 に答える
1

ActionBarSherlockの作成者であるJakeWhartonは、ActionBarSherlockのそれ以上の開発が中止されたことをGoogle+で発表しました。ActionBarSherlock 4.4は最後のリリースであり、バグ修正が行われる可能性がありますが、新機能はありません。

今後数週間でドットリリースが1つか2つあるかもしれませんが、バージョン4.4はTheLastRelease™になりつつあります。

https://plus.google.com/+JakeWharton/posts/F3HkWY9J8fK

holoeverywhereの問題フォーラムで質問し、開発者が回答したように:

HoloEverywhereは、v2.0以降ABSとの依存関係がありません

したがって、ABSを使用せずに、プロジェクトからライブラリを削除して、直接またはgoogleサポートライブラリのActionbarCompatに置き換える必要があります。

于 2014-01-03T01:30:10.357 に答える