首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android - 仿网易云音乐歌单详情页

,我们可以定制View的过渡切换效果,这是Material Design中比较常见的用法,Api21以上才有效。...需要在开启页面使用ActivityOptions.makeSceneTransitionAnimation(),其中定义共享的view和transitionName。...,切换页面就会出现闪烁的情况,而如果取的是缓存就不会有这样的问题,所以这里有个小技巧,就是起初Glide加载的图片就指定固定的大小(.override(120,120)),这样图片就会被缓存起来,等到跳转就取缓存...这里值得注意的是在设置图片时不要设置加载中的图片,不然初始化时达不到透明的效果。...,目前为止这个方案是最好的,效果体验几乎是一样,其中涉及到的知识点有:1、页面跳转共享元素曲线动画;2、透明状态栏;3、Glide监听图片加载状态和加载固定大小图片等;4、NestedScrollView

1.3K10

Android Jetpack 学习笔记(1) - 概述

paging * 在页面加载数据,并在 RecyclerView 中呈现。 room * 创建、存储和管理由 SQLite 数据库支持的持久性数据。...Paging 3 — 增量加载和显示数据 Paging 3 是一个分页库,可帮助您以增量方式加载和显示小块数据。...使用 AppCompat 的应用兼容 AppCompat 为各种 UI 元素和平台功能提供了向后移植,比如 Material 主题到像Toolbar、dark 主题这样的小部件。...Jetpack Compose — Android 的新 UI 工具包 Jetpack Compose是 Android 的全新现代 UI 工具包,此版本添加了许多新功能:视图互操作性、更多 Material...UI 组件、深色主题支持、新的 UI 测试和动画 API、对 的初始支持ConstraintLayout、状态改进管理、与可观察流的集成和 RTL 支持。

1.3K20
您找到你想要的搜索结果了吗?
是的
没有找到

React 16 - 生态:UI 库、Next.js、测试、开发调试工具

# UI 库 # Ant.Design 组件齐全,适合企业场景 # Material UI 样式更加美观,适合 2C 场景 # 选择因素 组件库是否齐全 样式风格是否符合企业业务需求 API 设计是否便捷灵活...# Next.js # 同构应用 在服务端执行虚拟 DOM 渲染,此时前端和服务端渲染层是同一套代码 # 创建同构应用 创建 Next.js 应用程序 (opens new window) 创建页面...页面就是 pages 目录下的一个组件 static 目录映射静态文件 page 具有特殊静态方法 getInitialProps,用于获取页面初始化数据 在页面中使用其他 React 组件 页面也是标准的...node 模块,可以使用其他 React 组件 页面会针对性打包,仅包含其引入的组件 使用 Link 实现同构路由 使用 next/link 定义链接 点击链接页面不会刷新 使用 prefetch...预加载目标资源 使用 replace 属性替换路由 动态加载页面 import dynamic from 'next/dynamic'; const DynamicComponentWithCustomLoading

1.5K30

简单了解下无障碍设计模式

Material design 的内置的无障碍功能将帮助你的应用适应所有用户。本节内容主要适用于移动端 UI 设计。有关设计和开发完全无障碍的产品的详情,请访问Google 无障碍网站。...通过在 UI 元素上添加描述性的标签,使用户可以通过声音在应用中导航。当使用屏幕阅读器(如 “TalkBack” ),并通过触摸板导航,在用户指尖触摸到 UI 元素,会大声读出标签上的文本。...为了使具有运动和视觉敏感性的用户能舒适地使用界面,请遵循 Material Design 运动规范,该规范支持 W3C 的以下运动指南: 如果内容持续移动、滚动或闪烁的时间超过 5 秒,则会暂停、停止或隐藏...当页面使用合适的语义化标签,一些无障碍技术允许用户在页面的这些标记(例如标题)之间导航。 硬件或软件方向控制器(例如 D-pad、轨迹球或键盘)允许用户以线性的方式从一个选择的元素跳到另一个元素。...错误示例 当把重要的操作嵌入到其他内容中,就不清楚什么是页面中最重要的元素。 焦点顺序 输入焦点应该按照视觉布局的顺序排列,从屏幕顶部到底部。它应该从最重要的项目到最不重要的项目进行遍历。

4.7K40

Android Socket通讯 分离服务端和客户端、发送表情消息

库 ② 初始化Emoji2库 ③ 加载Emoji列表 ④ 修改UI ⑤ 表情适配器 ⑥ 表情弹窗 ⑦ 页面使用 三、源码 前言   在之前写的Socket通讯中,完成了基本的客户端和服务端的通讯,功能比较简单...一、页面优化   页面优化内容还是比较多的,首先要做的就是分离页面。在com.llw.socket包下新建一个ui包。...通过SocketApp中初始化,在页面使用的时候可以就可以无所顾忌了。为了让App在启动的时候调用SocketApp,我们需要在AndroidManifest.xml中注册。...复制进去是这样的,如下图所示: 然后我们再初始化的时候将这些表情包加载到列表中...}) } } dialog.show() } 这里我们先获取布局,然后配置弹窗,再配置弹窗中的列表,再配置列表的适配器,最后再点击适配器回调接口到页面

2.9K30

关于加载状态的思考和尝试

: 正文 } 但以上方式存在三个问题: 短暂的loading会导致页面出现闪烁的 丑陋的三元表达式 同样的逻辑页面过多后会导致重复的样板代码 那我们应该如何去设计一个...短暂的loading会导致页面出现闪烁的 通过使用延迟loading消失的时间,如:不管请求合适请求成功,都延迟500ms再消失loading。...,并且大于200ms小于500ms,loading显示500ms,避免临界情况如请求时间为201ms同样会出现闪烁情况,这样折中去优化。...,我们也不用每次请求去切换状态,看似Suspense完美解决了我们加载状态的问题,但是在使用的时候发现,Suspense只是解决了“初始化”问题,如果一个表单进行提交需要loading,Suspense...现在整体的思路已经清晰及Suspense+指令调用组合,Suspense+骨架屏的方式管理初始化状态,指令调用管理操作状态。

48330

干货 | 从47%到80%,携程酒店APP流畅度提升实践

稳的含义是用户在打开具体一个页面,没有出现白屏、崩溃、闪动等。快的含义是页面打开很快,用户在页面进行交互,操作流畅自然。质的含义,是在浏览页面,没有无故的弹窗拦截,打断用户的操作。...4.1 页面加载速度优化 在页面加载速度优化上,我们从2021年8月份开始进行迭代优化至今,酒店预订流程页面的慢加载率从初始值的42.90%降低至现阶段的8.05%。...,使用了 saveLayer 的 Widget 会自动显示为棋盘格式,并随着页面刷新而闪烁。...与检查多视图叠加渲染的checkerboardOffscreenLayers 参数类似,Flutter 也提供了检查缓存图像的开关 checkerboardRasterCacheImages,来检测在界面重绘频繁闪烁的图像...优化前,如下图,页面初始化/开始加载/加载中/加载完成,均触发多个action,由于action是异步的,每个数据处理模块都有一些耗时和异步,加载完成后页面可能已经刷新,此处有可能展示了未处理完成的数据

1.6K30

一触即发——App启动优化最佳实践

那么这个时间,实际上是Activity启动,到Layout全部显示的过程,但是要注意,这里并不包括数据的加载,因为很多App在加载时会使用懒加载模式,即数据拉取后,再刷新默认的UI。...配置中的android:opacity="opaque"参数是为了防止在启动的时候出现背景的闪烁。 接下来可以设置一个新的Style,这个Style就是Activity预加载的Style。...new Thread(),当然,你也可以通过公共的线程池来进行异步的初始化工作,这个是最能够压缩启动时间的方式 延迟初始化 延迟初始化并不是减少了启动时间,而是让耗时操作让位、让资源给UI绘制...,在ContentView初始化完毕后,再进行执行,保证了UI绘制的流畅性。...设置效果类似,即通过取消、透明化系统的统一的加载页面来达到启动的『加速』,实际上,是一个『甩锅』的过程。

1.4K40

干货 | 从47%到80%,携程酒店APP流畅度提升实践

稳的含义是用户在打开具体一个页面,没有出现白屏、崩溃、闪动等。快的含义是页面打开很快,用户在页面进行交互,操作流畅自然。质的含义,是在浏览页面,没有无故的弹窗拦截,打断用户的操作。...4.1 页面加载速度优化 在页面加载速度优化上,我们从2021年8月份开始进行迭代优化至今,酒店预订流程页面的慢加载率从初始值的42.90%降低至现阶段的8.05%。...,使用了 saveLayer 的 Widget 会自动显示为棋盘格式,并随着页面刷新而闪烁。...与检查多视图叠加渲染的checkerboardOffscreenLayers 参数类似,Flutter 也提供了检查缓存图像的开关 checkerboardRasterCacheImages,来检测在界面重绘频繁闪烁的图像...优化前,如下图,页面初始化/开始加载/加载中/加载完成,均触发多个action,由于action是异步的,每个数据处理模块都有一些耗时和异步,加载完成后页面可能已经刷新,此处有可能展示了未处理完成的数据

1.8K30

【React】归纳篇(十)组件间通信方式之Redux | UI组件AntDesign | Redux-react

(即:页面地址的跳转都是在浏览器端实现的,不会去重新请求服务端获取 html,html 只是在应用初始化的时候加载一次。)...2、点击路由链接,只会发生页面局部更新 3、数据通过ajax请求,在前端异步展示 4、整个应用只有一个完整页面,该页面由各种组件构成,页面的切换其实就是不同组件的切换,你只需要在配置中把不同的路由路径和对应的组件关联上即可...组件库 material-UI(www.material-ui.com) and-design PC(ant.design/index-cn) mobile(mobile.ant.design/index-cn...) antD 如何按需打包需要的样式: antD 把每个组件做成文件夹: 方式1: babel-plugin-import插件,只加载有import 的组件。...组件 只负责UI的呈现,不带有任何业务逻辑 通过props接收数据,一般数据和函数 不使用任何Redux的API 一般保存在components文件下 容器组件 负责管理数据和业务逻辑,不负责UI

22530

基于 Next.js 的 SSRSSG 方案了解一下?

4.5 代码拆分和预加载 通过 Next.js 的路由功能,可以自动完成页面按需加载当前页面所需的代码,同时会自动预加载页面中属于自身应用的链接。...这意味着在呈现主页,最初不会提供其他页面的代码,同时可确保即使您有数百个页面,主页也能按需快速加载。...仅加载您请求的页面的代码也意味着页面变得独立,如果某个页面抛出错误,应用程序的其余部分仍然可以工作。...在 Next.js 的生产版本中,每当 Link 组件出现在浏览器的视口中,Next.js 都会在后台自动预取链接页面的代码。当您单击链接,目标页面的代码已在后台加载页面转换将近乎即时。...当浏览器加载页面,其 JavaScript 代码会运行并使页面完全交互。

5.4K30

史上最优美的Android原生UI框架XUI使用指南

组件:组件页面主要包含了UI框架中所有组件的使用Demo样例,在"com.xuexiang.xuidemo.fragment.components"包下,点击查看。...工具:工具页面主要包含了UI框架中所有辅助工具的使用Demo样例,在"com.xuexiang.xuidemo.fragment.utils"包下,点击查看。...拓展:扩展页面主要包含了功能比较复杂的第三方UI组件集成Demo样例,在"com.xuexiang.xuidemo.fragment.expands"包下,点击查看 项目结构如下图: 项目结构 Demo...XUI设置 1.在Application最顶部初始化设置(必须) XUI.init(this); //初始UI框架 XUI.debug(true); //开启UI框架调试日志 2.调整应用的基础主题...而且同样是在Android5.0(21)以下,如果你使用vector加载SVG图片的话,同样也会导致R文件找不到,因为在Android5.0(21)以下系统是不支持加载SVG图片的。

4.3K20

Vue 18个常用组件库

baianat.github.io/vee-validate/' eslint-plugin-vue vue语法检查工具,可以快速的定位出错位置 https://eslint.vuejs.org/ vue——lazyload 图片懒加载处理组件...vue-lazyload axios HTTP通信组件,可以远程获取各种REST-API服务 https://github.com/axios/axios vuedraggable 网页对象拖动组件,可以实现页面对象的拖动排序...内容过滤 , 分页等操作 https://xaksis.github.io/vue-good-table/ Vuex 状态管理 https://vuex.vuejs.org/ Vuetify vue 的 ui...框架 https://vuetifyjs.com/zh-Hans/ vue-material Google 设计风格的UI组件库 https://material-ui.com/ Nuxt.js Vue...(例如,客户端首次加载页面,会请求大量的js,从而导致 首页加载慢,SEO 等问题),用Nuxt.js 可以解决这些问题 https://nuxtjs.org/

3.5K00

干货 | 携程酒店Flutter性能优化实践

这些现象出现时,页面会出现不连续的动画,页面刷新会短暂停顿,打开新页面速度较慢,新页面出现白屏或者较长时间的加载动画,用户做点击滑动等交互页面不响应。...这两者的区别是final变量在第一次使用时被初始化,而const 变量是一个编译替换为常量值。...,使用了 saveLayer 的 Widget 会自动显示为棋盘格式,并随着页面刷新而闪烁。...a) 预加载页面数据 页面数据预获取的方案,实现方法是在上一个页面提前获取服务数据,在用户跳转到当前页面,直接从缓存获取,节省了数据的网络传输时间,达到快速展示当前页面内容的效果。...在实现全流程预加载方案之后,我们酒店预订流程页面的慢加载率从初始值的42.90%降低至现阶段的8.05%。

1.9K10

Android 优化——启动优化

需要创建 App 进程,加载相关资源,启动 Main Thread,初始化首屏 Activity 等。...adb shell am start -W [应用报名]/[Activity的全路径名],得到三个时间值: ThisTime 一般和 TotalTime 相同,如果应用启动开启了一个过渡用的全透明页面预处理一些事情...TotalTime 应用启动时间,包括创建进程、Application 初始化、Activity 初始化到显示。 WaitTime 一般比 TotalTime 大,包括系统的耗时。...优化 布局优化 逻辑优化 必要且耗时的逻辑,考虑单独开线程执行 必要不耗时,按优先级高低依次执行 非必要的延迟初始化,等用到再初始化 针对冷启动的欺骗效果 使用 placeholder UI...Android 最新的 Material Design 建议使用一个 placeholder UI 来展示给用户直至 App 加载完毕,类似 iOS 的做法。

94230
领券