2012-04-13 6 views
0

私のアプリでは、リストと通常の両方のアクティビティで使用できる共通のメソッドと属性があります。両方のアクティビティに拡張するために継承を使用して親クラスを作成したいと思います。1つのクラスをAndroidの通常のアクティビティとリストアクティビティに拡張する方法

java.lang.RuntimeException::あなたのコンテンツは、ID属性「android.R.id.list」

あるListViewコントロールを持っている必要があり、私は親クラスを作成する場合は、通常の活動は私に例外を与えるリストの活動を延長

私はこの親クラスを拡張するクラスが必要なリスト機能を持っていません。

同じ方法を2つの異なるクラスにコピーしないで、リストアとアクティビティを拡張する方法はありますか?

ありがとうございます!

答えて

0

ListViewを使用する最も簡単な方法を探している場合を除き、ListActivityを使用する必要はありません。

私がこれに取り組む方法は、私が必要とする活動と、それらのすべてで何が必要なのか、そしていくつかのものだけで、どのような機能が必要なのかを示しています。extend

例えば、スーパーベース活動、BaseActivityを持つことができます。これにより、すべての子アクティビティに必要な設定、ティアダウン、その他の機能を設定できます。そこからBaseListActivityBaseActivityに拡張され、必要なものすべてがBaseActivityから処理され、ListViewの機能が追加されます。

Activity > BaseActivity > BaseListActivity > MyListActivity 
Activity > BaseActivity > MyPlainActivity 

ここでは、リストビューと同様にカーソルを管理するために私が取り組んできたいくつかのクラスのビデオを紹介します。

ManagedActivity classes - YouTube

0

ListViewをレイアウト内のビューとして使用するには、ListActivityを使用する必要はありません。

これに基づいて、Activityを拡張するBaseActivityを作成し、すべてのメソッドと属性を追加できます。

すべてのアクティビティでこのBaseActivityを拡張できます。

希望すると便利です。

関連する問題