Android 增加滑动刷新特性

Google 释放的一个针对Android支持库的更新引入了一个激动人心的标准实现,它是正通过诸如GMail或者Google Now这些应用逐渐引介给大家的一种模式.


QQ图片20190423203750.gif

这一模式被称作滑动刷新, 使用一个对用户向上拉动作的反馈,来通知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;
};

颜色主题可以是任何类型的颜色或者就使用相同的颜色. 不管怎么样,第一个参数也会被用在设置初始化反馈条的背景上.

我们也已经增加了一个 专用的示例 来展示这一代码如何被集成到一个完整的场景中,囊括了一个利用了片段的复杂布局.

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容