[网页游戏开发]容器的使用及自定义Tab,RadioGroup,List,ViewStack
Morn里面,容器和其他普通组件不同,无需皮肤,所以也不能从组件树种拖动创建(Tab,RadioGroup例外),只能转换而来
Morn的容器组件主要有Box,Container,Panel,Tab,RadioGroup,List,ViewStack,他们的区别请查看教程《进一步了解Morn UI及工作流》
添加容器的操作步骤
1.选择要被包含在容器中的对象,比如我选择了一个label和button

2.用快捷键Ctrl+B转换为容器

这样就把label和button包含到了容器内

Box,Container,Panel等容器都是上面的操作方法
进入容器进行编辑
上面已经把label和button包含在容器里了,操作容器,就能同时操作label和button,比如设置位置,alpha属性等
如果想编辑容器内的label怎么操作呢?
只需双击这个容器对象,就可以进入容器内部了,然后就可以随意对内部组件进行操作修改,双击容器外区域,就又返回容器视图
Box,Container,Panel容器操作都比较简单,下面说一下Tab,RadioGroup,List,ViewStack自定义方式
Tab,RadioGroup普通创建方式
1.把一个按钮命名为tab_xxx

2.拖动到编辑器视图即可创建一个普通Tab

3.通过设置labels属性来改变标签的内容,设置direction属性可以控制Tab是水平还是垂直布局

这样就完成了一个Tab的创建
RadioGroup操作方式和Tab类同,只需把一个RadioButton命名为radiogroup_xxx,拖动到视图并且设置属性即可
自定义Tab,RadioGroup,List,ViewStack的显示
如果遇到个性化需求,比如每个按钮颜色不同,被放置的位置随意并且没有规律,上述方法明显不能控制每个按钮并让他们个性化
而自定义的方式实现的Tab,RadioGroup就能轻松实现个性化需求。
自定义方式和Box操作类似,下面我们自定义一个RadioGroup
1.在编辑器视图中拖动两个RadioButton,这时对这些按钮做一下个性化修改,比如我让一个RadioButton的Label颜色设置为红色,另外一个字体改为粗体

2.分别把他们的name属性命名为item0,item1等等(如果更多就是item2,item3)

3.然后同时选择这两RadioButton,Ctrl+B换行为RadioGroup容器

这样就完成了一个自定义RadioGroup组件,非常简单并且很灵活吧,Tab,List,ViewStack等容器自定义和上面类同
关于List和ViewStack的使用,会在后面单独进行更为详细的讲解,敬请期待
[网页游戏开发]容器的使用及自定义Tab,RadioGroup,List,ViewStack的更多相关文章
- 网页游戏开发秘笈 PDF扫描版
精选10种常见的游戏类型,透过典型实例,深入剖析游戏引擎及工具的选用技巧,详细讲解每款游戏的制作过程,为快速掌握网页游戏开发提供系统而实用的指南. 网页游戏开发秘笈 目录: 译者序 前 言 导 言 ...
- [网页游戏开发]Morn简介及使用教程
网页游戏开发利器,morn系列教程之Morn简介及使用教程 网页游戏开发的一大部分工作是在和UI制作上,一个好的工具及框架能使开发事半功倍,Adobe自带flash IDE和Flex各有不足. Mor ...
- [网页游戏开发]进一步了解Morn UI及工作流
Morn UI工作流 Morn Builder不仅仅是对Flash IDE的改进,传统的开发协作是以fla为基础,由于fla是二进制文件,在以svn等版本控制软件协作下,合并过程中会出现各种各样的问题 ...
- Phaser3 场景Scene之间的传值 -- HTML JAVASCRIPT 网页游戏开发
PHASERJS3 一.首先当然得有至少有二个场景sceneA.js,sceneB.js 二.从场景A传值到场景B二种方法 1)通过事件this.events.emit('event key',{ ...
- [网页游戏开发]Morn组件赋值
在讲解List之前,我们先介绍一下Morn组件赋值功能 默认属性赋值 界面逻辑开发过程中,经常会涉及到动态更改UI属性,比如: 界面有一个按钮,一个多选框和一个文本,分别命名为myButton,myC ...
- Phaser3 场景Scene之间的传值 -- HTML网页游戏开发
一.首先当然得有至少有二个场景sceneA.js,sceneB.js 二.从场景A传值到场景B二种方法 1)通过事件this.events.emit('event key',{objKey:objVa ...
- Phaserjs3 对象池随机产生炸弹并销毁 -- Html网页游戏开发
scene.js /// <reference path="../../libs/phaser/phaser.min.js"/> 'use strict'; var B ...
- Unity3D游戏开发之开发游戏带来的问题
昨日曾就某投资人把移动团队失败原因之中的一个归于选择Unity引擎进行了一番评论,工具本身无罪,但怎样理解工具.正确使用Unity引擎确实须要讨论,在选择Unity之前你也许须要了解下这个引擎实际开发 ...
- 手机3D游戏开发:自定义Joystick的相关设置和脚本源码
Joystick在手游开发中非常常见,也就是在手机屏幕上的虚拟操纵杆,但是Unity3D自带的Joystick贴图比较原始,所以经常有使用自定义贴图的需求. 下面就来演示一下如何实现自定义JoySti ...
随机推荐
- [转]pickle python数据存储
python的pickle模块实现了基本的数据序列和反序列化.通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储:通过pickle模块的反序列化操作,我们能够从文件 ...
- Eclipse安装以及安装时遇到的问题解决办法
1, 首先要安装JDK(最好使用最新版本),注意区分32位于64位 2, 安装程序,双击打开安装即可 3, 安装包下载:http://developer.android.com/sdk/index.h ...
- 【LeetCode】Available Captures for Rook(车的可用捕获量)
这道题是LeetCode里的第999道题. 题目叙述: 在一个 8 x 8 的棋盘上,有一个白色车(rook).也可能有空方块,白色的象(bishop)和黑色的卒(pawn).它们分别以字符 &quo ...
- Manthan, Codefest 17
A. Tom Riddle's Diary time limit per test 2 seconds memory limit per test 256 megabytes input standa ...
- 【Luogu】P3414组合数(快速幂)
题目链接 从n的元素中选零个,选一个,选两个,选三个...选n个的方案数和,其实就是n个元素中取任意多个元素的方案数,那对于每一个元素,都有取或不取两种情况,所以方案数最终为2^n个. #includ ...
- [SCOI2005]最大子矩阵 (动态规划)
题目描述 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大.注意:选出的k个子矩阵不能相互重叠. 输入输出格式 输入格式: 第一行为n,m,k(1≤n≤100,1≤m≤2 ...
- Hibrenate load 和 get
这次我们来谈一下Hibernate3.2 Session加载数据时get和load方法的区别(Hibernate 3以后的版本就用get()方法取代find()这个方法了),其实这个在网上有很多的论述 ...
- 数据库数据导出CSV文件,浏览器下载
直接上代码: def download(request): # 从数据库查询数据 data_list = Info.objects.all() # 定义返回对象 response = HttpResp ...
- delphi使用IdHTTP模拟提交页面方法总结
http://blog.csdn.net/lxdcyh/article/details/3986800 1.拖入TIdHTTP控件,HandleRedirect设为True,否则可能会出现HTTP 3 ...
- Codeforces 667D World Tour【最短路+枚举】
垃圾csdn,累感不爱! 题目链接: http://codeforces.com/contest/667/problem/D 题意: 在有向图中找到四个点,使得这些点之间的最短距离之和最大. 分析: ...