我對Android非常陌生,我正在探索谷歌網站上的示例代碼。我目前使用的代碼是SwipeRefreshLayout:http://developer.android.com/samples/SwipeRefreshLayoutBasic/index.htmlSwipeRefreshLayout:滑動進度動畫
在代碼中,我們看到爲列表視圖執行SwipeRefreshLayout,換句話說,如果您向下拖動列表視圖,該方法被觸發並且列表視圖自我刷新。
<android.support.v4.widget.SwipeRefreshLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/swiperefresh"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</android.support.v4.widget.SwipeRefreshLayout>
什麼是困惑我的是,有在該得到的,當你向下拖動列表視圖的頂部顯示的進度動畫條的代碼沒有佈局。您是否認爲SwipeRefreshLayout自動生成一個進度動畫欄,而不需要用戶在xml中爲其指定任何佈局?
例如,如果想要在進度動畫欄的兩端填充填充,以便在刷新時動畫不會觸摸屏幕的末端,那麼將如何進行?
https://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html對此沒有任何說法。
謝謝。我認爲你是對的,除了設置進度條的顏色外,沒有什麼可以自定義的。你還知道SwipeRefreshLayout類是否自動爲列表視圖操作notifyDataChanged()方法?在用戶通過mListAdapter.add(cheese)方法下拉3秒鐘後,listview會自動刷新,但notifyDataChanged()方法從未被調用來通知列表視圖對其數據所做的更改。 – Simon
不,它不。您可以檢查自己的代碼,在您的sdk目錄中搜索'SwipeRefreshLayout.java'。您需要安裝支持v4庫的最新版本(修訂19.1.0) –
的源代碼所以我猜想listview是從數據添加到適配器時自動刷新的:mListAdapter.add(cheese)? – Simon