首页 文章 精选 留言 我的

精选列表

搜索[网站开发],共10000篇文章
优秀的个人博客,低调大师

推荐开发者使用 Material Design 组件

为了保证您的应用与用户设备中安装的其他应用在视觉和行为上保持一致,我们推荐您遵循Material Design 规范,因为用户从一个应用中学习的操作模式可以无缝衔接地在另一个应用中使用。 Material Design 规范 https://material.io/design/introduction Android 用户希望您的应用在视觉和行为上与系统保持一致。您在设计视觉和导航模式时应该遵循 Material Design 规范… ——d.android.com/design 您可以使用Material Design Components(MDC) 组件库来实现这一目的。本文将列出使用 MDC 的优势,从而说明我们推荐使用它的原因。 Material Design Components https://github.com/material-components/material-components-android d.android.com/design https://developer.android.google.cn/design 组件 MDC 提供了系统标准组件的 Material 版本,例如Buttons、Toolbars、CheckBox等等,使用这些组件能轻松实现 Material 风格。如果您使用了MaterialComponents主题,当您 inflate 一个 layout (通过 MDC 的View Inflater) 时,被实例化是 Material 组件而不是标准组件,因此您不需要对布局进行重大的更新就能轻松实现 Material 风格。 <!-- Copyright 2019 Google LLC. SPDX-License-Identifier: Apache-2.0 --> <!-- 标准组件 Button 将会被替换为 MaterialButton --><Button ... /> <!-- 您甚至可以使用 MaterialButton 特定的属性 --><Button ... app:icon="@drawable/foo"/> <!--如果您想用具有向后兼容能力的 AppCompatButton 而不是 MaterialButton,您可以这样做 --><androidx.appcompat.widget.AppCompatButton.../> Buttons https://material.io/develop/android/components/buttons Toolbars https://material.io/develop/android/components/app-bars-top CheckBox https://material.io/develop/android/components/checkboxes View Inflater https://developer.android.google.cn/reference/com/google/android/material/theme/MaterialComponentsViewInflater 所有 Material 组件都继承自对应的AppCompat组件,因此它们享有相同的向后兼容能力和新版本的 bug 修复。 Material 组件在对应的系统标准组件和AppCompat组件的基础上拓展出更多样式和功能,例如MaterialButton拥有以下多种样式: https://material.io/develop/android/components/buttons ​​​​​​​ <!-- Copyright 2019 Google LLC. SPDX-License-Identifier: Apache-2.0 --> <!-- Contained button --><Button ... style="?attr/materialButtonStyle"/> <!-- Text button --><Button ... style="?attr/borderlessButtonStyle"/> <!-- Outlined button --><Button ... style="?attr/materialButtonOutlinedStyle"/> 我最喜欢的功能之一是使用MaterialTextView替换TextView,它新增的功能可以很方便地在TextAppearance中设置行高。 MaterialTextView https://material.io/develop/android/components/material-text-view 新增的功能 https://medium.com/androiddevelopers/whats-your-text-s-appearance-f3a1729192d 除了拓展现有组件的功能外,MDC 还提供了一系列全新的组件。您可能知道Bottom Navigation、Bottom Sheet和Floating Action Button,但未必听说过Chips、Date Picker和Time Picker。 Bottom Navigation https://material.io/develop/android/components/bottom-navigation-view/ Bottom Sheet https://material.io/develop/android/components/bottom-sheet-behavior/ Floating Action Button https://material.io/develop/android/components/floating-action-button/ Chips https://material.io/develop/android/components/chip/ Date Picker https://material.io/develop/android/components/picker Time Picker https://github.com/material-components/material-components-android/blob/master/docs/components/TimePicker.md MDC 提供的全部组件列单,请查阅——组件: https://material.io/components Material 主题 Material 主题可以更系统地自定义Material Design 样式来体现您的产品品牌。Material 主题包括颜色、字体样式和形状属性。对其进行自定义将自动应用到您用于构建应用的组件上。 Material 主题 https://material.io/design/material-theming/ 颜色 https://material.io/design/color/ 字体样式 https://material.io/design/typography/ 形状 https://material.io/design/shape/ 您可以将 Material 主题理解为创建设计系统的设计系统。您只需配置好颜色、字体样式和形状,即可得到一套基于您品牌的完整设计系统。 Nick Rout在以下文章中分别深入地介绍了这三个子系统: 打造 Material 颜色主题 | 实现篇 打造 Material 字体样式主题|实现篇 打造 Material 形状主题 | 实现篇 Nick Rout https://medium.com/@ricknout 深色主题 MDC 组件遵循 Material 的深色主题背景规范实现了深色主题。在深色主题下,许多组件都将调整它们的颜色,并且在阴影不可见的情况下添加了 elevation 叠加层以表现高度变化。 深色主题背景规范 https://material.io/design/color/dark-theme.html Chris Banes在下面这篇文章中深入介绍了 MDC 的深色主题: 使用 Material Design 组件实现深色主题 Chris Banes https://chrisbanes.medium.com/ Material 动效 Material Design 还针对转场动画制定了规范。现在,MDC 不仅提供了规范,还将这些模式实现为 Transition 以便您在应用中使用。 规范 https://material.io/design/motion/the-motion-system.html Hunter Stich在下面这篇文章中介绍了 Material Motion 库: 使用 Material Design 组件实现 Material 动效 Hunter Stich https://medium.com/@hunter_stich 使用 Compose Jetpack Compose是 Android 系统的下一代 UI 工具包,目前已正式发布。它会提供 Material 风格的组件和主题。尽早使用 MDC 将为未来迁移至 Jetpack Compose 做好准备 — 它们使用了相同的概念、设计名词和组件。您甚至可以使用类似MDC-Android Compose主题适配器的库来简化迁移过程,该库将 XML 实现的 MDC 主题转换为 Compose 的MaterialTheme。 Jetpack Compose https://developer.android.google.cn/jetpack/compose MDC-Android Compose主题适配器 https://github.com/material-components/material-components-android-compose-theme-adapter MaterialTheme https://developer.android.google.cn/reference/kotlin/androidx/compose/material/package-summary#materialtheme 推荐使用 Material 希望您已经清楚我们推荐使用Material Design Components构建 Android UI 的原因。我们近期更新了在 Android Studio 中通过File > New Project菜单新建的模版,这些模版为您预设置了 Material 主题并使用了 MDC,因此您可以更容易的开始使用 MDC。如果您还没有迁移到 MDC,请查看我们的迁移指南: https://medium.com/androiddevelopers/migrating-to-material-components-for-android-ec6757795351 Material Design Components https://github.com/material-components/material-components-android 近期更新 https://developer.android.google.cn/studio/preview/features#mdc-templates

优秀的个人博客,低调大师

测试开发之网络篇-IP地址

IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。这里介绍一下目前广泛使用的IPv4版本。 IP地址使用一种统一的格式,为互联网上的每一个网络、每一台设备分配一个逻辑上的地址。IP地址是一个32位的二进制数,为了方便查看,通常把他分为4组,每组的8位用一个十进制数来表达,形成一个形如192.168.0.10的地址。 IP地址由两部分组成,一个网络ID和一个主机ID,两个部分使用子网掩码来区分。也因此,一个完整的IP地址,必须包括主机地址和子网掩码两个部分才有意义,它可以用以下两种形式来表达: 192.168.0.10主机地址和 255.255.255.0子网掩码:Windows中配置网络地址时,会要求您同时输入这两个值; 192.168.0.10/24:24表示子网掩码的二进制位数。对应的10进制分组表示为255.255.255.0。这里显示了3个十进制的255,简单换算关系为24(二进制位数) / 8( 每组8位)= 3(分组数)。 将主机地址和子网掩码进行二进制与运算,可以得到网络ID。如果您不熟悉二进制运算,可以简单地将IP地址中,对应掩码部分为0的屏蔽。比如:C类192.168.1.10的IP地址,使用子网掩码255.255.255.0屏蔽了第4个分组,得到主机所在的网络ID为192.168.1.0。 这里需要注意的是,子网掩码每个分组的值,并不必须都正好是255或0,255.255.12.0也是一个合法的子网掩码。 人们定义了A、B、C三类的地址,子网掩码分别如下。 A类:255.0.0.0 B类:255.255.0.0 C类:255.255.255.0 也定义了私有IP地址范围,专门为组织机构内部使用。 A类:10.0.0.0~10.255.255.255 即10.0.0.0/8 B类:172.16.0.0~172.31.255.255即172.16.0.0/12 C类:192.168.0.0~192.168.255.255 即192.168.0.0/16 这些也是您在公司中看到最多的地址。不同组织内部可以使用相同的私有地址,这是因为企业内部网络同Internet是隔离的,之间通过路由器进行转发,私有地址并没有直接暴露在公共网络中。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册