Google 近日釋放的一個針對Android支持庫的更新引入了一個激動人心的標准實現,它是正通過諸如GMail或者Google Now這些應用逐漸引介給大家的一種模式.
這一模式被稱作滑動刷新, 使用一個對用戶向上拉動作的反饋,來通知app發生了一種數據刷新的請求. 這完成了另外一種常見的模式,無線滾動,其使用一種向下動作來載入更多的數據.
我們已經更新了 我們的組件 來揭示實現了該模式的新的 SwipeRefreshLayout 類. 要使用它的話,只要簡單的將其放入你現有的Xamarin.Android app布局中.
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/refresher"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</android.support.v4.widget.SwipeRefreshLayout>
從代碼中設置 SwipeRefreshLayout 實體是相當簡單的. 簡單的定義一個顏色主題還有一個當一個由用戶發起的更新操作發生時被調用的回調就行了.
refresher = FindViewById<SwipeRefreshLayout> (Resource.Id.refresher);
refresher.SetColorScheme (Resource.Color.xam_dark_blue,
Resource.Color.xam_purple,
Resource.Color.xam_gray,
Resource.Color.xam_green);
refresher.Refresh += async delegate {
await forum.FetchItems (clear: true);
refresher.Refreshing = false;
};
顏色主題可以是任何類型的顏色或者就使用相同的顏色. 不管怎麼樣,第一個參數也會被用在設置初始化反饋條的背景上.
我們也已經增加了一個 專用的示例 來展示這一代碼如何被集成到一個完整的場景中,囊括了一個利用了片段的復雜布局.
更多Android相關信息見Android 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=11