Android5.0推出工具栏Toolbar用来替代ActionBar,灵活性和易用性大大增强,有关Toolbar的详细介绍参见《Android开发笔记(一百一十九)工具栏Toolbar》。 可是仅仅使用Toolbar的话,还是有些呆板,比如说Toolbar固定占据着页面顶端,既不能跟着主体页面移上去,也不会跟着主体页面拉下来。为了让App页面更加生动活泼,势必要求Toolbar在某些特定的场景上移或者下拉,如此才能满足酷炫的页面特效需要。那么Android5.0也同时给出了相应的解决方案,即推出MaterialDesign库,通过该库中的AppBarLayout控件,对Toolbar加以包装,从而实现顶部工具栏的动态变化效果。 AppBarLayout其实继承自LinearLayout,所以具备LinearLayout的所有属性与方法。对于大家关心的额外功能,则主要有以下几点: 1、支持响应主体页面的滑动行为,即在主体页面上移或者下拉时,AppBarLayout能够捕捉到主体页面的滚动操作; 2、AppBarLayout捕捉到滚动操作之后,还要通知头部控件(通常是Toolbar),告诉头部控件你要怎么滚,是爱咋咋滚,还是满大街滚; 具体到实现上,要在工程中做以下修改: 1、添加几个库的支持,包括appcompat-v7库(Toolbar需要)、design库(AppBarLayout需要)、recyclerview库(主页面的RecyclerView需要); 2、布局文件的根布局采用android.support.design.widget.CoordinatorLayout,因为design库的动态效果都依赖于该控件; 3、CoordinatorLayout节点要添加命名空间声明xmlns:app="http://schemas.android.com/apk/res-auto"; 4、使用android.support.design.widget.AppBarLayout节点包裹Toobar; 5、Toobar节点添加滚动属性app:layout_scrollFlags="scroll|enterAlways",声明工具栏的滚动行为标志; 6、演示页面的主体页面使用RecyclerView控件,并给该控件节点添加行为属性app:layout_behavior="@string/appbar_scrolling_view_behavior",表示通知AppBarLayout捕捉RecyclerView的滚动操作。 下面是AppBarLayout结合RecyclerView实现的工具栏向上滚动效果截图:
上一篇文章介绍了高仿京东的沉浸式状态栏,可是跟京东首页的头部轮播图相比,依然有三处缺憾: 1、京东的头部Banner上方,除了有悬浮着的状态栏,状态栏下面还有一行悬浮工具栏,内嵌扫一扫图标、搜索框,以及消息图标; 2、把整个页面往上拉,状态栏的背景色从透明变为深灰,同时工具栏的背景也从透明变为白色; 3、页面下拉到顶后,继续下拉会拉出带有“下拉刷新”字样的布局,此时松手则会触发页面的刷新动作; 上面第一点的状态栏和工具栏悬浮效果,都有对应的解决办法;第二点的状态栏和工具栏背景变更,也存在可行的解决方案。倒是第三点的下拉刷新,以及第二点的上拉监听,却不容易实现。 虽然Android提供了专门的下拉刷新布局SwipeRefreshLayout,但它并没有页面随手势下滚的效果。一些第三方的开源库如PullToRefresh、SmartRefreshLayout固然能让整体页面下滑,可是顶部的下拉布局很难个性化定制,至于状态栏、工具栏的背景色修改更是三不管。因此若想呈现完全仿照京东的下拉刷新特效,只能由开发者编写一个自定义的布局控件了。 自定义的下拉刷新布局,首先要能够区分是页面的正常下滚,还是拉伸头部要求刷新。二者之间的区别很简单,直觉上看就是判断当前页面是否拉到顶了。倘若还没拉到顶,继续下拉动作属于正常的页面滚动;倘若已经拉到顶了,继续下拉动作才会拉出头部提示刷新。所以此处得捕捉页面滚动到顶部的事件,相对应的则是页面滚动到底部的事件。鉴于App首页基本采用滚动视图ScrollView实现页面滚动功能,故而该问题就变成了如何监听该视图滚到顶部或者滚到底部。正好ScrollView提供了滚动行为的变化方法onScrollChanged,通过重写该方法即可判断是否到达顶部或底部,重写后的代码片段如下所示:
Android自5.0后增加了不少新控件,帮助开发者实现了更酷更炫的UI效果。可是对于初学者来说,这些新控件的用法不像老控件那么简单,网上相关的使用介绍也不如老控件那样丰富,种种情况无疑加大了我们学习这些新控件的难度。为此,博主初步整理了Android在5.0和6.0之后的新增控件,及其对应的说明博文,给大家提供一个可资学习和借鉴的索引。 下面是新增控件的索引表格:
上一篇博文《Android开发笔记(一百三十五)应用栏布局AppBarLayout》阐述了如何把Toolbar往上滚动,那反过来,能不能把Toolbar往下拉动呢?这里要明确一点,Toolbar本身是页面顶部的工具栏,其上没有本页面的其它控件了,如果Toolbar被拉下来了,那Toolbar上面的空白该显示什么?所以Toolbar的上部边缘是不可以往下拉的,只有下部边缘才能往下拉,这样的视觉效果好比Toolbar如电影幕布一般缓缓向下展开。 不过,Android在实现展开效果的时候,并非直接让Toolbar展开或收缩,而是另外提供了CollapsingToolbarLayout,通过该布局包裹Toolbar,从而控制标题栏的展开和收缩行为。下面是CollapsingToolbarLayout的属性说明: app:contentScrim : 指定布局内部未展开时的背景颜色。 app:collapsedTitleTextAppearance : 指定未展开时的标题文字字体。 app:collapsedTitleTextColor : 指定未展开时的标题文字颜色。 app:collapsedTitleGravity : 指定未展开时的标题文字对齐方式。 app:expandedTitleTextAppearance : 指定展开后的标题文字字体。 app:expandedTitleTextColor : 指定展开后的标题文字颜色。 app:expandedTitleGravity : 指定展开后的标题文字对齐方式。 app:expandedTitleMargin : 指定展开后的标题四周间距。 app:expandedTitleMarginStart/app:expandedTitleMarginTop/app:expandedTitleMarginEnd/app:expandedTitleMarginBottom : 指定展开后的标题具体方向的间距。 上述属性在代码中的设置方法如下所示: setContentScrim/setContentScrimColor/setContentScrimResource : 设置布局内部未展开时的背景颜色。 setCollapsedTitleTextAppearance : 设置未展开时的标题文字字体。 setCollapsedTitleTextColor : 设置未展开时的标题文字颜色。 setCollapsedTitleGravity : 设置未展开时的标题文字对齐方式。 setExpandedTitleTextAppearance : 设置展开后的标题文字字体。 setExpandedTitleColor : 设置展开后的标题文字颜色。 setExpandedTitleGravity : 设置展开后的标题文字对齐方式。 setExpandedTitleMargin : 设置展开后的标题四周间距。 setExpandedTitleMarginStart/setExpandedTitleMarginTop/setExpandedTitleMarginEnd/setExpandedTitleMarginBottom : 设置展开后的标题具体方向的间距。 在工程中使用CollapsingToolbarLayout,则需注意以下几点: 1、添加几个库的支持,包括appcompat-v7库(Toolbar需要)、design库(CollapsingToolbarLayout需要)、recyclerview库(主页面的RecyclerView需要); 2、布局文件的根布局采用android.support.design.widget.CoordinatorLayout,因为design库的动态效果都依赖于该控件; 3、CoordinatorLayout节点要添加命名空间声明xmlns:app="http://schemas.android.com/apk/res-auto"; 4、使用android.support.design.widget.AppBarLayout节点包裹android.support.design.widget.CollapsingToolbarLayout节点,再在CollapsingToolbarLayout节点下添加Toobar; 5、Toobar节点添加滚动属性app:layout_scrollFlags="scroll|enterAlways",声明工具栏的滚动行为标志; 其实真正运行的时候,Toolbar的高度是固定不变的,变化高度的是CollapsingToolbarLayout。只是许多App把这两者的背景设为一样的,所以看起来像是统一的标题栏在收缩和展开。既然二者原本不是一家,那么就得有新的属性用于区分它们内部的行为,新属性在Collaps
animating bool型 显示指示器(true,默认的)还是隐藏它(false);
文章索引 4.1.1 状态栏 4.1.2 导航栏 4.1.3 工具栏 4.1.4 工具栏与导航标准按钮 4.1.5 标签栏 4.1.6 标签栏标准图标 4.1.7 搜索栏 4.1.8 范围栏 4.2.1 活动 4.2.2 活动视图控制器 4.2.3 集合视图 4.2.4 容器视图控制器 4.2.5 图片视图 4.2.6 地图视图 4.2.7 页面视图控制器 4.2.8 浮出层 4.2.9 滚动视图(Scroll View) 4.2.10 分栏视图控制器 4.2.11 表格视图 4.2.12 文本视图 4.2
Android 的覆盖范围在递增,体验也在变得越来越好,现已有超过 2.5 亿台大屏设备搭载了 Android 系统,包括平板电脑、可折叠设备以及 Chrome OS 设备。如何适配不同的屏幕尺寸并保障良好的体验,一直以来都是开发者的一大难题。尤其随着可折叠设备等新兴产品的涌现,适配工作也愈发迫切。本文将重点介绍 Material Design 指南中更新的相关内容,并提供一些建议来帮助开发者按照自适应界面的原则来构建应用,从而解决在平板电脑和可折叠设备上的适配问题。
在过去的 12 个月内,有约 1 亿台新平板设备被激活,Chrome OS 的激活量增长了 92%,是增长速度最快的桌面平台。这意味着在平板电脑、可折叠设备和 Chrome OS 设备上,有超过 2.5 亿台大屏幕设备运行着 Android 系统,而关于可折叠设备的使用数量也在不断增长,同比增长超过 250%,因此,"大屏" 正在成为 Android 设备中一个重要且增长势头最快的细分市场。这也让设备制造厂商们意识到,针对大屏做优化是让设备在高端手机细分市场中脱颖而出的机会。
<link rel="stylesheet" type="text/css" href="<%= path %>/extJs/resources/css/ext-all.css"> <script type="text/javascript" src="<%= path %>/extJs/ext-all.js"></script>
iOS是运行于iPhone、iPad和iPod touch设备上、最常用的移动操作系统之一。作为互联网应用的开发者、产品经理、体验设计师,都应当理解并熟悉平台的设计规范。这有利于提高我们的工作效率,保证用户良好的体验。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/51330401
CoordinatorLayout是在 Google IO/15 大会发布的,遵循Material 风格,包含在 support Library中,结合AppbarLayout, CollapsingToolbarLayout等 可 产生各种炫酷的效果,本篇博客就将介绍CoordinatorLayout的各种酷炫效果。
WijmoJS Designer,一种全新的在线Web托管工具,为WijmoJS纯前端控件集提供了可视化设计图面和 Java代码生成器。 WijmoJS Designer允许用户创建控件实例,指定属性和事件,并生成可以合并到应用程序中的相应HTML 和 Java。WijmoJS 在线Web设计器对于开发网格和图表等复杂对象特别有用。
jQuery Mobile是jQuery 在手机上和平板设备上的版本。它不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架。支持全球主流的移动平台。
一方面写写自己走过的弯路掉进去的坑,避免以后再犯;另一方面希望通过分享自己的经验教训,与网友互相切磋,从而去芜存菁进一步提升自己的水平。因此博主就想,入门的东西咱就不写了,人不能老停留在入门上;其次是想拾缺补漏,写写虽然小众却又用得着的东西;另外就是想以实用为主,不求大而全,但求小而精;还有就是有的知识点是java的,只是Android开发也会经常遇上,所以蛮记下来。个人的经验总结,难免有遗漏谬误之处,希望网友们不吝指教。
没有什么比完美的图片更能让你的应用程序熠熠生辉,但如果你想让你的应用程序用户真正参与并与图片互动呢?也许他们想放大、平移、掌握这些图像?
Material Design之CollapsingToolbarLayout 相关属性和方法介绍
BCGSoft Ltd.成立于1998年,是一家专门为Microsoft Windows开发业务组件的软件公司。BCGSoft旨在帮助开发人员将当今市场上先进的技术整合到他们的应用程序中。
表相关与的TabBar SWTableViewCell - 国内开源作者,带很多手势的表单元格。 MCSwipeTableViewCell - 带很多手势的表单元格。 TMQuiltView - 瀑布流。 XRWaterfallLayout - 超简单的瀑布流实现,实现说明。 WaterfallFlowDemo - 一个简单的UICollectionView瀑布流布局演示demo。 XLForm - 很多表格类的表,写法更高冷一点,推荐使用。 Eureka.swift - Eur
学习移动app开发,我们常常从讲解基本的控件开始,如UILabel、UISearchBar、UIButton、UITextField等等。在实现一个简单的ios 应用之前,我们首先来看ios开发中一些基本的概念。 视图控制器(View Controllers) 视图控制器是MVC(Modl-View-Controller)模式的逻辑部分。按照字面意思,这个控制器能够控制某个视图。 UIViewController 苹果极力推崇MVC这种开发模式,并且帮我们实现了一个叫做UIViewController的控制
出品 | OSC开源社区(ID:oschina2013) Visual Studio Code 是一个开源的代码编辑器,支持 IntelliSense、调试、Git 和代码片断。可在 Windows、Linux 和 macOS 上下载使用。支持常见的脚本和编程语言,还可以通过安装扩展来获得更多语言和功能的支持。 近日微软发布了 1.72 版本,更新内容如下: 工具栏自定义:隐藏 / 显示工具栏操作 用户现在可以从工具栏上隐藏操作。右键单击工具栏中的任何操作,并选择其隐藏命令或任何切换命令即可。被隐藏的操作会
当我们开始在场景中添加内容时,一般会先从 层级管理器 的 创建节点菜单 开始,也就是点击左上角的 + 按钮弹出的菜单,从几个简单的节点分类中选择我们需要的基础节点类型并添加到场景中。
Jupyter NbExtensions Configurator 是Jupyter Notebook的一个扩展工具,它提供了一系列标签,只需勾选相应插件就能自动载入。里面的插件能帮助减少工作量,书写更优雅的代码和更好的展示结构。
github传送门 前言 之前也是写了RecyclerView的内容, 这次再补充伸缩头部的实现. 港真, 伸缩头部是那种看到第一眼就会爱上的视图效果, 好看又简洁. 本文内容较多, 需要10分
Unity中的资源包管理器Package Manager为我们提供了模块、工具包的集中管理功能,可在其中下载、升级相应的资源包,本文介绍如何构建公司内部的Package Manager资源包管理器。
当我在AS上新建一个module时,系统默认的最外层布局不再是我们熟悉的五大布局中的一种,而是一个全新的布局:CoordinatorLayout。它是Material风格的重要组件, 作为布局的顶层控件,协调(Coordinate)其他组件, 实现联动。
#041、 通过返回标记,在编辑器向前或向后定位代码 原文地址:http://blogs.msdn.com/saraford/archive/2007/09/19/did-you-know-how-to-navigate-forward-and-backwards-in-the-editor-all-because-of-go-back-markers.aspx 操作步骤: 1、使用标准工具栏的“向前定位”和“向后定位”按钮。 2、快捷键:向后定位是“Ctrl+-(减号)”,向前定位是“Ctrl+Shi
今天介绍的组件是NestedScrollView,大部分的App首页都会用到这个组件。
图表 PNChart - 国内开源作者,动态的图表。 swift-linechart - 功能完整、实用的折线图组件。使用方便,参数配置简单。是不可多得的优质组件--swift。 ios-charts - 一款优秀 Android 图表开源库 MPAndroidChart 的 Swift 语言实现版(支持 Objective-C 和 Swift 调用)。缺省提供的示例代码为 Objective-C。 TEAChart - xhacker/TEAChart 一个简洁的 iOS 图表库,支持柱状图、饼图
目前,超过 2.5 亿台大屏幕设备搭载了 Android 系统,其中包括平板电脑、可折叠设备和 ChromeOS 设备。仅在过去的 12 个月里,就有近 1 亿台新的 Android 平板电脑被激活,同比增长 20%;而 ChromeOS 的增长率为 92%,是目前增长最快的桌面设备平台。可折叠设备正在崛起,同比增长超过 265%!总的来说,目前有超过 2.5 亿台活跃的大屏幕设备搭载了 Android 系统。在这样的势头下,我们将继续努力让 Android 成为更好的操作系统,为用户和开发者提供更优质的服务。
作者 / Oscar Wahltinez, Developer Relations Engineer, Google
作者 | 罗燕珊 近日,谷歌安卓团队发布 Jetpack Compose 1.2 版本,该版本提供了开发者所需要的更多 API,以支持更高级的用例。例如可下载字体、Lazy grids、窗口插图、嵌套滚动互操作以及更多工具支持,还有针对平板电脑和 Chrome 操作系统的改进。 在发布 Jetpack Compose 1.2 版本的同时,官方还发布了 Compose for Wear OS 1.0 ——使得 Compose 也支持 Wear OS 应用开发。这是 Compose 智能手表平台 UI 工具包的
特别喜欢稀土掘金个人界面的样子,那我们就来看看如何实现这个效果吧,要想实现这个效果,肯定需要的是Material Design风格,那就需要学会使用以下控件:CoordinatorLayout,App
2018-08-13 by Liuqingwen | Tags: Android 翻译 | Hits
“扩展面板详细信息”选项卡现在显示类别、资源链接和其他信息,例如扩展发布和更新日期。选择一个类别将在“扩展”视图中显示该类别中的其他扩展。
Exercise - Define a group of cells as a "solution". Then it is possible to hide/show these solutions cells by clicking on a cell widget. 练习——将一组细胞定义为“解决方案”。然后,可以通过单击一个单元小部件来隐藏/显示这些解决方案单元。 通过选中两个cell 然后按工具栏上的博士帽按钮使其成为一个solution,在第一个cell上会出现加号的小图标,通过点击Exercise2的标签来控制solution的显示与隐藏。
协议:CC BY-NC-SA 4.0 尔曹身与名俱灭,不废江河万古流。——杜甫《戏为六绝句·其二》 在线阅读 在线阅读(Gitee) ApacheCN 学习资源 目录 AndroidStudio 4.1 开发基础知识(Java 版) 一、简介 二、设置 AndroidStudio 开发环境 三、在 AndroidStudio 创建安卓应用示例 四、在 AndroidStudio 创建安卓虚拟设备(AVD) 五、使用和配置 AndroidStudio AVD 模拟器 六、AndroidStudio 用户
1.UI.Layout jQuery UI布局插件 官方网站:http://layout.jquery-dev.com/index.cfm 使用大小可折叠的嵌套面板和大量选项创建高级UI布局。布局
今天要分享的内容,是近期内关于UGUI的最后一篇,UGUI里的滚动视图ScrollView,后期的内容会根据项目实用的功能组件进行分享。
许多程序员有这样的疑问:现有的知识能满足工作需要了,为什么还要费劲去学习Material Design? 那么我可以告诉你,Material Design大大节约了UI上的开发时间,而学会她(满足日常使用)只需花一点点功夫。
作者:Pasquale D’Silva 译者:MartinRGB在我们的大脑中,存在着多维的思考模型,能够帮助我们理解周围复杂的世界。我们还可以利用这种具有空间感的思考模式,帮助我们处理抽象的信息。 动效设计的空间感
在滚动过程当中,其实是在修改原点坐标。当手指触摸后,scroll view会暂时拦截触摸事件,使用一个计时器。假如在计时器到点后没有发生手指移动事件,那么scroll view 发送 tracking events 到被点击的subview。假如在计时器到点前发生了移动事件,那么 scroll view 取消tracking 自己发生滚动。
2018-08-27 by Liuqingwen | Tags: Android 翻译 | Hits
可折叠设备向用户们提供了使用他们的手机做更多事情的可能性,包括*桌面模式**等创新,也就是当手机平放时,铰链处于水平位置,同时折叠屏幕处于部分打开的状态。
我们在后台和社区等各渠道收到了很多来自开发者们的反馈,也把一些开发者们常见的问题进行了简单的收集和梳理,整理成这一篇关于为折叠屏和大屏幕设备构建应用的常见问题和解答,如果您在构建过程中有任何其他的问题,欢迎通过留言的方式让我们知道。
领取专属 10元无门槛券
手把手带您无忧上云