web-dev-qa-db-ja.com

Android-アクティビティとListActivity-どちらをアクティビティクラスに拡張する必要がありますか?

Androidで開発することを学び、より一般的な質問がありました。リストやその他のビューを使用するレイアウトがある場合、アクティビティにActivityまたはListActivityを使用する必要がありますか?クラス?

ListActivityを使用すると、リスト固有のイベントをオーバーライドしやすくなる可能性があることは知っていますが、ActivityよりもListActivityを使用することには他に利点がありますか?将来、レイアウトをGridViewに変更したい場合はどうなりますか?クラスのコードを変更することは、これ以上/それほど苦痛ではないでしょうか?

この点に関する「ベストプラクティス」とそのメリットについて知りたいと思ったので、どんな答えでも役に立ちます:)

バラ

29
Bara

ListActivityを使用すると、物事を簡単にし、コードを読みやすくするためのショートカットメソッドが多数提供されます。

たとえば、 onListItemClick() method を取得します。これは、アイテムをクリックするたびに呼び出されるため、別のリスナーを作成する必要がありません。

ListActivityのレイアウトを変更したい場合でも、 setContentView()メソッドをActivity から変更できます。 ListViewのどこかに@Android:id/listと呼ばれるViewがある限り、ListActivityは引き続き機能します。

それでもわからない場合は、いつでも ListActivity のソースコードを見て、生活を少し楽にする以外にそれほど多くのことをしていないことがわかります。

43
Dave Webb

私はアクティビティに行きます。ささいなことをしたいと思っていて、それがリストに含まれることがわかっている場合を除いて、ListActivityを使用する理由は実際にはわかりません。

11
Alex Volovoy

ListActivityコードは再利用できず、何度も記述する必要があるため、ListActivityではなくActivityを使用する必要があります。

0
Tanya Agrawal