javascript原生移动云编程3 - 比web还简单的页面UI布局
来源:互联网 发布:淘宝 买药 编辑:程序博客网 时间:2024/05/22 17:15
用javascript在码实的云平台上,可以在云里编写原生的移动应用。UI部分要用到Titanium的UI库,这个库从IOS和安卓的原生UI库整合而来,目的是JS可以调用,并且做到跨平台。UI的核心元素是View,用它做页面布局,比起web的CSS实在容易很多,总共就三种,绝对布局、垂直布局、水平布局,分别对应于下面三个截屏:
1、绝对布局 absolute
这是View默认的布局。View方框的左上角是原点,内挂的子View可以用top, left,right, bottom或center来安排位置。下面的代码是绝对布局,蓝色方框box2压在红色方块box1上。
Class.create(Mash5.Widget, {initialize : function (config, params) {var container = Ti.UI.createView({width : Ti.UI.FILL,height : Ti.UI.FILL,backgroundColor : '#ccc'});this.setContentView(container);var box1 = Ti.UI.createView({ width: '80%', height: '100dip', backgroundColor: '#f44', borderRadius: dipToPx(20), top: '20dip',});container.add(box1);var box2 = Ti.UI.createView({ width: '220dip', height: '200dip', top: '100dip', left: '20dip', borderColor: '#44f', borderWidth: '4dip',})container.add(box2);}})
2、垂直布局 vertical
手机应用主要用竖屏,垂直布局就是为了竖屏排版的方便,例如制作数据录入的表单,数据列表等。布局需要“拼爹”,在父级View,也就是container里声明layout: 'vertical'。于是蓝色矩形box2自动排在红色矩形box1下面,而间距由box2的top来决定,因此这是个相对布局。
Class.create(Mash5.Widget, {initialize : function (config, params) {var container = Ti.UI.createView({width : Ti.UI.FILL,height : Ti.UI.FILL,backgroundColor : '#ccc',layout: 'vertical',});this.setContentView(container);var box1 = Ti.UI.createView({ width: '80%', height: '100dip', backgroundColor: '#f44', borderRadius: dipToPx(20), top: '20dip',});container.add(box1);var box2 = Ti.UI.createView({ width: '80%', height: '200dip', top: '10dip', backgroundColor: '#44f',})container.add(box2);}})
3、水平布局 horizontal
水平布局会把子View在水平方向自动排列,排满时会自动换行。本例的四个方块,一排按屏幕宽度尺寸只能安排下3个(红色、蓝色、绿色),于是第四个方块box4(黄色)就自动编排到下一排。
Class.create(Mash5.Widget, {initialize : function (config, params) {var container = Ti.UI.createView({width : Ti.UI.FILL,height : Ti.UI.FILL,backgroundColor : '#ccc',layout: 'horizontal',});this.setContentView(container);var box1 = Ti.UI.createView({ width: '33%', height: '120dip', backgroundColor: '#f44',});container.add(box1);var box2 = Ti.UI.createView({ width: '33%', height: '120dip', backgroundColor: '#44f',});container.add(box2);var box3 = Ti.UI.createView({ width: '33%', height: '120dip', backgroundColor: '#4f4',});container.add(box3);var box4 = Ti.UI.createView({ width: '33%', height: '120dip', backgroundColor: '#ff4',});container.add(box4);}})
2 0
- javascript原生移动云编程3 - 比web还简单的页面UI布局
- javascript原生移动云编程4 - 如何做图文并茂的博客页面UI
- javascript原生移动云编程2 - 原生移动UI的起点
- javascript原生移动云编程8 - 如何插入任意web页面
- javascript原生移动云编程5 - 如何做互动按钮和页面跳转
- javascript原生移动云编程(编外) - javascript速成答疑
- javascript原生移动云编程6 - 如何做动画效果
- javascript原生移动云编程14 - 如何隐藏和定制屏幕上部的导航条
- 使用Easy UI进行页面的简单布局
- javascript原生移动云编程1 - 十分钟做出跨平台原生App
- 比 JavaScript 更适合现代 Web 应用程序的编程语言
- web页面的布局
- javascript原生移动云编程7 - 如何调用云数据服务显示实时天气
- javascript原生移动云编程9 - 如何使用云数据库读取和保存数据
- javascript原生移动云编程10 - 如何调用相机并上传下载图片视频
- javascript原生移动云编程11 - 如何调用手机图库中图片
- javascript原生移动云编程12 - 如何用手机录音和播放
- javascript原生移动云编程13 - 通过蓝牙操控智能硬件
- Microsoft100——006.判断树B是不是树A的子结构
- hdu4982 暴搜+剪枝(k个数和是n,k-1个数的和是平方数)
- 【线性代数】方程组的几何解释
- 深入分析STL标准模板List的使用及事项
- 数据结构-【链表】单向链表的逆置和双向循环链表
- javascript原生移动云编程3 - 比web还简单的页面UI布局
- Unity 编译顺序及原理
- UVA10714
- Shell常识--校验和、核实以及加密--总结自《Linux Shell 脚本攻略》
- Spiral Matrix
- [Android View] QuickReturn (自动隐藏header/footer view)
- poj 2726 Holiday Hotel (排序&&单调栈)
- Openstack中创建虚拟机不能够ping通虚拟路由端口
- poj 3268 Silver Cow Party