2012-08-15 73 views

回答

11

ListActivity通過提供許多以列表爲中心的功能「免費」(如果您喜歡),擴展了常用功能android.app.Activity。例如,列表條目點擊的處理整齊地包含在ListActivity的onListItemClick(...)內,而如果您使用的是簡單的android.app.Activity,那麼您需要使用OnClickListener和實現手動實現此操作。

通過所有帳戶,如果您的佈局包含一個列表,然後使用ListActivity/ListFragment,因爲它是一個有用的擴展。這並不意味着您的整個屏幕布局必須列出,但其中的一部分必須託管一個帶有標識符id="@android:id/list"的ListView小部件。

關於該類的Javadoc與如何使用它的有用示例可以找到here

+0

OOoh。多個答案都說同樣的事情!把它交給失敗者! :) – OceanLife 2012-08-15 12:55:50

+0

好的,根據性能比較好用ListActivity? – BamsBamx 2012-08-15 13:15:36

+0

本質上它們是相同的,但ListActivity有一些有用的幫助器方法,可能已經被Android團隊有效地實施並且很好地執行,因此正在盡其所能地執行。與性能和列表更相關的項目是管理你的光標,而不是做愚蠢的事情,如檢索列表中的所有項目只使用前10個等。 – OceanLife 2012-08-15 13:25:46

3

ListActivities是專門設計用於ListViews。它提供了幾個幫助器方法,如onListItemClick(),這使得它們更容易使用ListView。

您可以在ListActivity的活動中執行任何操作。

如果您想更改ListActivity的佈局,您仍然可以使用Activity中的setContentView()方法。只要ListView中有一個名爲@android:id/list的ListView,ListActivity仍然可以工作。

如果您仍然不確定,可以隨時查看ListActivity(Jelly Bean代碼鏈接到的代碼)的源代碼,並且看到除了讓您的生活更輕鬆一點之外,它沒有那麼多。

2

ListActivity延伸,您同意在您的活動佈局中可以使用ListView組件的合同。

ListView組件應具備ID:@android:id/list

ListView控件類提供了工作和操作的ListView

0

而且,在常規Activity您可以使用下面的代碼onCreate隱藏方便的方法應用標題欄。看起來你不能在ListActivity中做同樣的事情。 (這很難學到)

requestWindowFeature(Window.FEATURE_NO_TITLE); 
setContentView(R.layout.activity_list); 
// The rest of the content of onCreate 
相關問題