1

私の現在のアプリケーションには、ListActivity (もちろんリストビュー) を拡張するメインのアクティビティが 1 つあります。メインのアクティビティには、ほとんどのアプリ機能も含まれています。

ユーザーが現在の listView と gridView の 2 つのビューから選択できるオプションを追加したいと考えています。コードを再利用したい - ほとんどの関数は両方のビューで使用できます。

実際の質問をする前に、私の質問は gridView を追加する方法ではないことに注意してください-既に追加されており、うまく機能します(すべてのリストビュー行をコメントアウトする場合)。

私の質問は - どうすればいいですか?

  • 2 つの異なるビューとは、2 つの異なるアクティビティが必要であることを意味しますか? 1つは「ListActivity」を拡張し、もう1つは「Activity」を拡張しますか?

  • ユーザーが選択した内容に応じて、メインのアクティビティが他のアクティビティのいずれかを呼び出す 4 つのクラス (この場合は 3 つのアクティビティと関数クラス) を作成する必要がありますか?

  • 両方のビューに同じメイン アクティビティを使用する方法はありますか? (現在、「ListActivity」を拡張して「getListView()」を取得します。これにより、Activity が ID「list」を持つ ListView を探すときに、gridView が強制的に閉じられます)。

  • その他の方法で?

ありがとうございました!

4

1 に答える 1

1

ListActivity を使用せずに ListView を使用できます。アクティビティのコードの残りの部分がリスト フォームとグリッド フォームの両方で類似している場合は、このアプローチをお勧めします。表示するものを動的に選択し、異なるアクティビティを使用するのではなく、必要に応じて switch または if ステートメントに基づいて両方を実行するようにアダプター定義を調整します。

于 2011-02-12T22:08:41.960 に答える