iis服务器助手广告
返回顶部
首页 > 资讯 > 移动开发 >Android开源 Skeleton 骨架屏
  • 430
分享到

Android开源 Skeleton 骨架屏

android开源 2023-09-25 18:09:23 430人浏览 安东尼
摘要

目录 一、简介 二、效果图 三、引用 Skeleton 添加jitpack 仓库 添加依赖: 四、使用 Skeleton 1、VIew 骨架屏使用  ViewSkeletonScreen 2、列表类View 骨架屏 RecyclerView

目录

一、简介

二、效果图

三、引用 Skeleton

添加jitpack 仓库

添加依赖:

四、使用 Skeleton

1、VIew 骨架屏使用  ViewSkeletonScreen

2、列表类View 骨架屏 RecyclerViewSkeletonScreen、GridViewSkeletonScreen、  ListViewSkeletonScreen


一、简介

骨架屏的作用是在网络请求较慢时,提供基础占位,当数据加载完成后,恢复数据展示。它可以给用户一种很自然的过渡,避免页面长时间白屏或者闪烁等情况。

Skeleton 除实现静态的骨架图展示和新增了骨架屏闪烁动画,骨架屏动画是指在页面加载时,先显示一个简单的页面框架(骨架屏),然后再加载实际的页面内容。这样可以让用户在等待页面加载的过程中,先看到一个基本的页面结构,避免了空白页面的尴尬和用户的无知情况。骨架屏动画的优点是可以提高用户体验,让用户感觉页面加载更快,同时也可以减轻服务器的压力。

在展示骨架屏的同时增加动画,可以减少因直接展示静态骨架屏的单一感觉,还可以增加界面的动态性,进一步减少用户在等待数据加载时的时间,从而提高用户体验感。

二、效果图

 

三、引用 Skeleton

添加jitpack 仓库

Android Gradle Plugin 为 v7.1.0 以下版本:进入项目根目录,打开 “build.gradle” 文件,在 “allprojects” 中加入如下代码:

...

allprojects {
    repositories {
        Maven { url 'https://jitpack.io' }
        mavenCentral()
        Google()
    }
}

当您的 Android Gradle Plugin 为 v7.1.0 或以上版本:进入项目根目录,打开 “settings.gradle” 文件,在 “dependencyResolutionManagement” 中加入如下代码:

...

dependencyResolutionManagement {         repositoriesMode.set(RepositoriesMode.FaiL_ON_PROJECT_REPOS)

        repositories {   

                  maven { url 'https://jitpack.io' }

                  mavenCentral()

                  google()

         }

}

添加依赖:

进入 “app” 目录,打开 “build.gradle” 文件,在 “dependencies” 中添加 :

...

dependencies {

...

implementation "com.gitee.ym521:skeleton:1.2.0"

}

四、使用 Skeleton

当前 skeleton支持两种状态:View和列表类View。

1、VIew 骨架屏使用  ViewSkeletonScreen

ViewSkeletonScreen viewSkeletonScreen  = Skeleton.bind(view) //作用布局             .load(R.layout.skeleton_view_item) //骨架屏布局 自定义 必须填写            .angle(20)  //流光动画 斜率 有默认值            .duration(1000)  //动画周期时长 (一次动画时长) 有默认值            .color(R.color.white) //流光动画 颜色 有默认值viewSkeletonScreen.show() //显示骨架屏viewSkeletonScreen.hide() //隐藏骨架屏 可以多次调用           

2、列表类View 骨架屏 RecyclerViewSkeletonScreen、GridViewSkeletonScreen、  ListViewSkeletonScreen

RecyclerViewSkeletonScreen recyclerViewSkeletonScreen = Skeleton.bind(view) //骨架屏作用recyclerView 控件  必须填写            .load(R.layout.skeleton_view_item)   //骨架屏item 布局Id  必须填写            .adapter(adapter)  //骨架屏 结束后的正常数据的适配器 必须填写            .angle(20)  //流光斜率 有默认值            .duration(1000) //流光动画 时长 有默认值            .count(10)  //骨架屏 item 个数 有默认值            .color(R.color.white) //流光动画 颜色 有默认值            .shimmer(true)  //是否开启流光动画 默认开启 recyclerViewSkeletonScreen.show() //显示骨架屏 recyclerViewSkeletonScreen.hide() //隐藏 骨架屏显示 .adapter(adapter) 内的正常数据  不建议多次调用recyclerViewSkeletonScreen.dismiss() //隐藏 骨架屏显示 .adapter(adapter) 内的正常数据  可以多次调用 

GridViewSkeletonScreen、  ListViewSkeletonScreen 和RecyclerViewSkeletonScreen设置一致,但是需要注意:RecyclerViewSkeletonScreen 的作用recyclerView 最好在显示骨架屏前设置layoutManager。

提示:RecyclerViewSkeletonScreen、GridViewSkeletonScreen、  ListViewSkeletonScreen 如果是请求回调方法\函数内关闭骨架屏,建议使用dismiss() 。可以避免在分页加载时频繁因调用hide()造成列表闪烁。 

Kotlin 就不再展示示例,能写kotlin 应该可以根据java示例 自己转换kotlin。

 

希望您给博主一些鼓励(点赞、关注、收藏),如果这个Skeleton有BUG欢迎大家提出。

来源地址:https://blog.csdn.net/Ym_quiet/article/details/132126768

--结束END--

本文标题: Android开源 Skeleton 骨架屏

本文链接: https://www.lsjlt.com/news/417639.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android开源 Skeleton 骨架屏
    目录 一、简介 二、效果图 三、引用 Skeleton 添加jitpack 仓库 添加依赖: 四、使用 Skeleton 1、VIew 骨架屏使用  ViewSkeletonScreen 2、列表类View 骨架屏 RecyclerView...
    99+
    2023-09-25
    android 开源
  • CSS实现Skeleton Screen骨架屏效果
    这篇文章给大家分享的是有关CSS实现Skeleton Screen骨架屏效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在加载网络数据时,为了提升用户体验,通常会使用一个转圈圈的loading动画,或者使用Sk...
    99+
    2023-06-08
  • 如何实现基于vue-skeleton-webpack-plugin的骨架屏
    小编给大家分享一下如何实现基于vue-skeleton-webpack-plugin的骨架屏,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了...
    99+
    2024-04-02
  • vue实现骨架屏的示例
    目录骨架屏用途Vue架构骨架屏思路大纲定义一个抽象组件获取插槽并初始化操作骨架屏循环slots操作类名操作vnode的静态类名使用方法传值效果如下完整地址骨架屏用途 作为...
    99+
    2024-04-02
  • flutter:占位视图(骨架屏、shimmer)
    前言 有时候打开美团,在刚加载数据时会显示一个占位视图,如下: 那么这个是如何实现的呢?我们可以使用shimmer来开发该功能 实现 官方文档 https://pub-web.flutter-io....
    99+
    2023-08-31
    flutter
  • vue中的骨架屏怎么生成
    本篇内容主要讲解“vue中的骨架屏怎么生成”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue中的骨架屏怎么生成”吧! 在vue中,...
    99+
    2024-04-02
  • Vue实现骨架屏的示例代码
    vue实现页面加载占位 效果如下 思路与实现 页面加载时用户等待,此时与用户交互的方式通常有等待层、进度条、加载动画等;本次介绍加载占位,把页面即将展示的样子用css背景展示出来,...
    99+
    2023-03-19
    Vue实现骨架屏 Vue骨架屏
  • 微信小程序如何实现骨架屏
    这篇文章主要介绍微信小程序如何实现骨架屏,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、演示二、说明:实现思路:需要默认数据,这样才能完美应对list,wx:if的情况,及flex...
    99+
    2024-04-02
  • 一种简单的Android骨架屏实现方案----0侵入0成本
    对骨架屏的理解 什么是骨架屏 所谓骨架屏,就是在页面进行耗时加载时,先展示的等待 UI, 以告知用户程序目前正在运行,稍等即可。 等待的UI大部分是 loading 转圈的弹窗,有的是自己风格的小动画。其实大同小异。而骨架屏无非也是一个等待...
    99+
    2023-08-31
    android
  • Vue单页面骨架屏的示例分析
    这篇文章主要介绍了Vue单页面骨架屏的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。关于骨架屏介绍骨架屏的作用主要是在网络请求较慢时...
    99+
    2024-04-02
  • vue项目中使用骨架屏的方法
    现在的应用开发,基本上都是前后端分离的,前端主流框架有SPA、MPA等,那么解决页面渲染、白屏时间成为首要关注的点 webpack可以按需加载,减小首屏需要加载代码的体积; 使用CD...
    99+
    2024-04-02
  • 微信小程序骨架屏的实现方法
    骨架屏是为了展示一个页面骨架而不含有实际的页面内容,从渲染效率上来讲,骨架屏它并不能使首屏渲染加快。由于骨架屏的一些使用又向用户渲染了额外的一些内容,这些内容是额外添加的、本来是不需...
    99+
    2023-01-17
    小程序骨架屏
  • 微信小程序骨架屏的实现示例
    目录什么是骨架屏 小程序中骨架屏的生成方式 引入方法 显示与隐藏 为了优化用户体验,骨架屏一直是开发者比较喜欢的表现方式,也就是首屏占位的一种表现方式,不会让浏览者因为长时间的等待而...
    99+
    2024-04-02
  • React实现一个通用骨架屏组件示例
    目录骨架屏是什么?Demo设计思路具体实现骨架屏是什么? 找到这里的同志,或多或少都对骨架屏有所了解,请容许我先啰嗦一句。骨架屏(Skeleton Screen)是一种优化用户弱网...
    99+
    2024-04-02
  • Android音视频开发MediaFrameWork框架源码解析
    目录一、Media FrameWork背景二、Media Framework“路线图”2.1 代理端2.2 服务端2.2.1 Source2.2.2 Deco...
    99+
    2022-12-28
    Android音视频Media FrameWork Android Media FrameWork
  • 甲骨文为推进AJAX和Java技术 广开开源之门(转)
    甲骨文为推进AJAX和Java技术 广开开源之门(转)[@more@]作者:阳光 | 出处:eNet海外媒体最新消息,甲骨文公司下周将在旧金山举行的 JavaOne会议上进行软件捐献,来推进AJAX和 Java 计划,它还将宣布计划向开源G...
    99+
    2023-06-03
  • 微信小程序骨架屏的应用与实现步骤详细记录
    目录什么是骨架屏小程序骨架屏的实现1. 生成页面骨架2. 骨架屏的应用3. 使用注意4. 思考后的封装总结什么是骨架屏 骨架屏是作为一种首次渲染加载优化的一种方法 我们打开一个应用后...
    99+
    2024-04-02
  • 解析Android框架之OkHttp3源码
    目录OkHttp流程图OkHttp基本使用OkHttp源码分析OkHttp流程图 OkHttp基本使用 gradle依赖 implementation 'com.squareup...
    99+
    2024-04-02
  • 解析Android框架之Volley源码
    目录Volley简单使用Volley执行原理Volley简单使用 我这里是以依赖架包的形式 ,大家也可以以gradle的形式进行依赖。 好了,接下来上代码了..... //获取...
    99+
    2024-04-02
  • Python开源框架总结
    Django: Python Web应用开发框架Django 应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响。Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就...
    99+
    2023-01-31
    开源 框架 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作