Onsen UI 前端框架(二)
上一章介绍了OnsenUI一些入门的知识以及它和AngularJS配合的初始化方法。这一章,咱们继续对这块内容进行介绍,对OnsenUI提供的组件进行更进一步的学习。
咱们从手机应用布局的最上面开始。手机应用布局最顶端,也就是经常提到的工具栏,是几乎每个应用都会存在的组件。这么经常出现的组件,OnsenUI当然会提供。<ons-toolbar>,这个就是OnsenUI提供的组件,这个组件使用起来非常的简单,最常见的使用场景就是<ons-page>下。
除了了解它使用的位置,还要再看它的基本布局。<ons-toolbar>组件分左中右三部分:
从上面的代码能看出来,<ons-toolbar>的左中右三部分的划分由三个内置样式类实现。并且左边的按钮可以通过<ons-back-button>实现页面返回上一页功能,而不必指定路由完成该功能。另外,工具栏左中右三部分的内容可以随意定制,可以根据自己的项目需要,实现自己想要的任意效果。最后需要提醒大家的是,如果,你在左中右三个样式类div下直接书写文本数据,你会发现它的显示效果不会是上下居中的效果,关于这个问题咱们可以通过样式来解决,但是,可以通过添加<ons-back-butto>或者<ons-toolbar-button>包裹你显示的文本来解决。
介绍完了工具栏,咱们再来说一个在项目开发过程中比较常用的组件—侧边栏,也有说法是抽屉布局<ons-sliding-menu>。
侧边栏的使用频率还是相对来说比较高的,大家经常见到的侧边栏就应该是在左边。在OnsenUI中,侧边的实现非常简单,它已经帮你集成了你想要实现的各种效果,你只需要了解其的各个属性即可。
根据侧边栏的显示效果,大家应该能想到它的组成应该是两部分,一部分是主页面,另一部分应该是侧边栏页面。OnsenUI提供了两种方式实现主页面和侧边栏页面的声明。这里咱们直接介绍咱们以后再项目中会使用的方法:
大家应该看到了,在<ons-sliding-menu>里,通过指定main-page和menu-page属性就可以把主页面和侧边栏页面确定。除了上面写到的side属性用来定义侧边栏的位置,侧边栏还有其他的属性用来控制显示效果。close-on-tap属性用来定义通过点击背景自动关闭侧边栏。swipeable属性用来定义侧边栏是否会响应你的滑动开关侧边栏,当然这个属性需要配合另外两个属性才能有效果,第一个:swipe-target-width属性用来定义侧边栏的显示最大展开宽度,第二个:max-slide-distance属性用来定义在主页面滑出侧边栏的最大滑动边距。最后给大家介筛一个与显示动画效果相关的。相信大家见过的侧边栏应该有多种形式,当然,OnsenUI也提供了三种,可用值为reveal(默认)push和overlay。大家看到名字应该能想到是什么样的显示效果了,那还等什么呢,赶紧去试试吧!
结尾咱们介绍一个和工具栏具有同等地位的组件,为什么要和工具栏组件比较呢?因为,工具栏是显示在页面的顶端,而它显示在页面的底部。它就是大家应该天天会接触的<ons-tabbar>。
选项卡栏由<ons-tabbar>组件和<ons-tab>组件组成。通常一个标签栏有三到五个项目,它们与图标和标签一起显示。每个选项卡栏项目分配到不同的页面。
要将选项卡栏放置到应用中,请放置<ons-tabbar>元素。一个<ons-tabbar>元素只接受<ons-tab>的元素数量。选项卡栏项目可以有一个icon属性和一个label属性。对于icon属性,请指定<ons-icon>元素中使用的相同图标名称。示例代码如下:
刚才咱们说了,<ons-tabbar>是显示在页面的底部的。但是这种说法不是绝对的,咱们可以通过修改标签栏的属相,来修改它的显示位置,这个属性就是position,它的值默认为bottom,你可以通过修改为top,让你的标签栏显示在页面的顶部。关于标签栏里的布局设置,大家可以根据自己的需要,随意调整。
关于标签栏里的子项—<ons-tab>,可以通过指定page属性,来实现点击某一个子项的时候,跳转到对应页面。并且active属性可以设置哪一个子项默认是激活状态。
今天咱们从一个页面的顶部,中间主页面,一直到底部标签栏,进行了比较详细的介绍,结合前一章项目的搭建。现在的你就可以去试试我上面说的这些组件了,希望你能发现更多的组件属相,加油!
Onsen UI 前端框架(二)的更多相关文章
- vue 前端框架 (二) 表格增加搜索
本章知识点 归纳: 1.定义全局过滤器 以及 私有过滤器 2.定义全局指令 以及 定义私有指令 3.定义键盘修饰符 4.v-for 的函数引入 5.字符串的incluede 方法,.toString( ...
- UI(UGUI)框架(二)-------------UIManager单例模式与开发BasePanel面板基类/UIManage统一管理UI面板的实例化/开发字典扩展类
UIManage单实例: /// 单例模式的核心 /// 1,定义一个静态的对象 在外界访问 在内部构造 /// 2,构造方法私有化 private static UIManager _instanc ...
- B-JUI(Best jQuery UI) 前端框架
From :http://b-jui.com/大略看了下还不错,收藏之.
- MUI简介-最接近原生App体验的前端框架
MUI简介-最接近原生App体验的前端框架 一.总结 一句话总结:最接近原生App体验的前端框架 二.多端发布 – 开发一套代码,发布六个平台 真正彻底的跨平台开发,不是简单的跨iOS和Android ...
- 基于Python3 + appium的Ui自动化测试框架
UiAutoTest 一.概要 数据驱动的Ui自动化框架 二.环境要求 框架基于Python3 + unittest + appium 运行电脑需配置adb.aapt的环境变量,build_tools ...
- Onsen UI – 新鲜出炉的 PhoneGap 界面框架
Onsen UI 是一个基于元素自定义的 HTML5 UI 框架,用于构建你的移动前端.这个一个基于 Web 组件的概念的框架,让构建应用程序变得更加轻松.Onsen UI 专门针对 PhoneGap ...
- b2c项目基础架构分析(二)前端框架 以及补漏的第一篇名词解释
继续上篇,上篇里忘记了也很重要的前端部分,今天的网站基本上是以一个启示页,然后少量的整页切换,大量的浏览器后台调用web服务局部.动态更新页面显示状态这种方式在运作的,从若干年前简单的ajax流行起来 ...
- 目前比较火的前端框架及UI组件
看到的一篇总结性的文章,收藏一下,感兴趣的可以自己看看,哪些是已经会的,哪些是没听说过的,哪些是一知半解的,都可以稍微看看. 一.前端框架库: 1.Zepto.js 地址:点击打开链接 描述:Zept ...
- 我是如何一步步编码完成万仓网ERP系统的(二)前端框架
https://www.cnblogs.com/smh188/p/11533668.html(我是如何一步步编码完成万仓网ERP系统的(一)系统架构) https://www.cnblogs.com/ ...
随机推荐
- java_JDBC(1)
Java连接Oracle步骤: 1.注册加载驱动 驱动名:DRIVER="oracle.jdbc.driver.OracleDriver";Class.forName(" ...
- java 继承的学习(转)
转自:http://www.cnblogs.com/happyframework/p/3332243.html,非常感谢啊 public class test { /** * @param args ...
- windows 下 多版本nodejs切换 nvmw
以下教程不适用于nodejs v0.6.5及以下版本 nvmw 下载到本地 Git clone https://github.com/hakobera/nvmw.git 2.设置环境PATH 添加如上 ...
- django源码简析——后台程序入口
这一年一直在用云笔记,平时记录一些tips或者问题很方便,所以也就不再用博客进行记录,还是想把最近学习到的一些东西和大家作以分享,也能够对自己做一个总结.工作中主要基于django框架,进行项目的开发 ...
- ICMP(网际控制报文协议)
为了更有效的提高ip数据报的成功转发和交付的效率,在网际层使用了icmp网际控制报文协议,这个协议允许主机和路由器提供差错和异常情况的报告,icmp不是高层协议,而是网际层的协议,加在ip数据报中一起 ...
- 用js实现文字提示层 ---总结
文字提示层在项目中应该是比较常见的,我工作中项目中就用到了,原理是一样,只不过形式不一样,今天通过看视频学习,学会了,总结下: 首先,页面效果如下: 需求: 当鼠标移入到红色字体是,提示框会显示在下 ...
- java IoC
IoC,控制反转,是spring的核心,通俗点讲就是我们不必再自己去用new创建对象了,通过l配置将类注入到IoC容器中,在启动时,IoC容器去帮我们创建对象,并管理其依赖关系,这种实现方式叫做DI, ...
- web请求
概述 发起一个http请求的过程就是建立一个socket通信的过程. 我们可以模仿浏览器发起http请求,譬如用httpclient工具包,curl命令等方式. curl "http://w ...
- ReactJS的开发日常
在用React框架开发的日子里,踩的坑真不少!今天就来说说这个关于组件的周期,说的可能不是很清楚,但是也给自己留下一个踩坑的纪念,如有不妥 还望大家指点一二 Warning: setState(... ...
- Android开发8:数据存储(二)——SQLite数据库和ContentProvider的使用
前言 啦啦啦各位小伙伴们许久不见了~学期末和过年期间自己忙着做其他事没能及时更新Android开发系列课程的博客,实在是罪过罪过~ 好啦~废话不多说,进入我们今天的主题.今天我们将和大家学习其他的数据 ...