2

私たちは大学で、数年前に作成された別のプロジェクト(プロジェクトB)であるクラスから拡張する必要があるプロジェクト(プロジェクトA)に取り組んでいます。これはEclipseで動作し、Android用のアプリを開発しているため、これは実際に私たちが話しているアクティビティです。

これまで私はこれを試しました:

  • プロジェクトAのビルドパスにプロジェクトBを追加する([プロジェクト]タブ内)
  • 完全なパッケージ名と.java名を使用してインポートします。

私が見つけたすべてのソリューションは、.jar、.class、さらには.apkファイルを操作するためのものですが、私はそれを操作していません。プロジェクトBは.javaファイルでいっぱいの単純なプロジェクトです。

もう少し明確にするために、プロジェクトAにはClassFromProjectAという名前のクラスがあり、プロジェクトBにはのようなクラスがありClassFromProjectBます。ClassFromProjectA次のようなものです:

public class ClassFromProjectA extends ClassFromProjectB{}

ClassFromProjectBは次のようなものです。

public class ClassFromProjectB extends ListActivity implements OnInitListener, OnGesturePerformedListener {}

ClassFromProjectBが実行している「唯一の」ことは、それから拡張することで、ListViewのデフォルトのレイアウトを変更し、特定のナビゲーションオプションを適用し、そこから拡張するすべてのアクティビティにジェスチャを適用し、さらにいくつかの調整を行います。

私がこれを作った場合:

public class ClassFromProjectA extends ListActivity{}

私のクラスではすべてが正常に機能し、エラーも警告も何もありません。

私たちはそれが機能していることを絶対に確信してClassFromProjectBいます。それは以前の成功した大学のプロジェクトであり、機能をチェックするためのサンプルアクティビティもファイル内にあり、すべてが魅力のように機能します。それはそれですが、同じプロジェクトファイルにあるためにのみ機能します。しかし、それはできません。インポートして拡張する必要があり、機能しません。

これを機能させる方法を知っているかどうか教えてください、または私を正しい方向に向けてください。

4

2 に答える 2

7

プロジェクト(プロジェクトA)内に含める必要のある完全なプロジェクトBがある場合にできること。

  1. 次の方法でプロジェクトBをライブラリにします。
    • EclipseでプロジェクトBを右クリックし、 [プロパティ]をクリックします。
    • Androidを選択し、次にisLibraryチェックボックスを選択します。 プロジェクトBのプロパティ
  2. プロジェクトBがライブラリになったら、次の方法でプロジェクトAにライブラリB(以前のプロジェクトB)を追加する必要があります。
    • EclipseでプロジェクトAを右クリックし、 [プロパティ]をクリックします。
    • Androidを選択し、[追加... ]をクリックします。 ライブラリを追加
    • マシンのeclipse内にあるすべてのライブラリプロジェクトのリストが表示されます。プロジェクトBも表示されます。それを選択して[ OK ]をクリックします。 ライブラリの選択
    • ライブラリのリストにプロジェクトBが表示されます。 プロジェクトBがライブラリとして追加されました

これで、プロジェクトBからプロジェクトAにパッケージをインポートし、そのクラスを問題なく使用できるようになります。

于 2013-01-10T12:15:54.660 に答える
1

次のように、projectAの参照projectBを試してください。

  1. projectAの「プロパティ」ウィンドウを開きます
  2. [Android]タブに移動します
  3. 「ライブラリ」の「追加」ボタンをクリックします
  4. 参照としてprojectBを選択します

この後、projectBからクラスをインポートできます。

于 2013-01-10T12:10:02.997 に答える