Code Monkey home page Code Monkey logo

egretmoon's Introduction

egretMoon

这是为白鹭引擎制作的一套纯代码的UI方案,用户可以通过修改颜色值得到自己喜欢的主题 此套方案有自己的一套独立moon.MoonEvent事件来管理组件的变化数据 使用时只要用addEvent()来帧听变化就可以得到数据

此套方案有一些常用的组件如

类文件MoonTheme.ts

  • moon.BasicView 基础窗
  • moon.BasicButton 基础按钮(只有两个皮肤)
  • moon.MoreSkinButton 多个皮肤按钮
  • moon.RadioButtonBar 单选框(默认是竖版,可以通过layout方法设置为横版)
  • moon.CheckBoxBar 多选框(默认是竖版,可以通过layout方法设置为横版)
  • moon.SliderBar 滚动条(默认是竖版,可以通过layout方法设置为横版)
  • moon.ProgressBar 进度条(默认是不显示进度的百分比,可以通过showText方法显示)
  • moon.PanelBar 面板(有标题栏与内容栏组成)
  • moon.TabbarBar 选项(子文件必须是MoreSkinButton)
  • moon.PanelMoreManager 面板控制器(可以左右滑动来切换不同面板)
  • moon.MoonUI 里面有很多方法可以直接得到Sprite形状,如getRect,getCircle,getRoundRect等等
  • moon.ShowLog 显示LOG工具提供两种方法log只显示最新的一条,logMessage可显示多条
  • moon.TipsManager TIPS显示管理,如单击按钮可在按钮上方显示一条TIPS说明
  • moon.MoonEvent 事件管理,提供事件广播dispEvent,事件帧听addEvent,删除事件removeEvent
  • moon.Label 统一文本类型字体等
  • moon.TabbarBar tabbar按钮组件
  • moon.AlertBar 手动关闭的提示或警告
  • moon.AlertAutoBar 自动关闭的提示或警告
  • moon.AlertRollBar 滚动关闭的提示或警告
  • moon.GameLoad 游戏素材加载时的界面
  • moon.MoonDisplayObject可示对象(可修改背景色与边框)

图片的管理模块

类文件MoonImage.ts

  • moon.Image 基本的图片管理类
  • moon.BasicContainer 基础图片容器(统一的增加删除查找下一个等方法)
  • moon.ImageChartlet 图片贴图类(用一张小图拼成一个大的背景图)
  • moon.ImageAnimation 图片动画类(使用一张张独立图片制作动画的类)
  • moon.ImageLayout 图像布局类(图片上下局中或离舞台上下左右多小像素点)

基本小游戏各个模块

类文件MoonGame.ts

  • moon.BasicGamePanel 基本的游戏逻辑处理类
  • moon.BasicGameStart 基本的游戏开始处理类
  • moon.BasicGameOver 基本的游戏结束处理类
  • moon.BasicGameSet 基本的游戏设置处理类

接口

  • ILayout 所有设置排版的方法都继承了接口ILayout,接受两个参数type类型与interval间隔 类型提供了两种竖版Const.VERTICAL和横版Const.HORIZONTAL
  • IItem 所有需要增加或删除自己子文件的接口都继承此接口
  • IOnoff 开关接口

其它说明

  • MoreSkinButton (同一个按钮可以使用多个皮肤,如开始游戏,再来一次等,就可用一个按钮不同皮肤) 此外MoreSkinButton可以设置toggleSwitch为true来使用两种状态自动切换
  • ShowLog使用时先在Main主类中调用一次moon.showLog.getIns().init(this.stage); 然后可以直接使用trace,与traceSimple来分别调用logMessage方法与log方法
  • TipsManager使用时先在Main主类中调用一次moon.TipsManager.getIns().init(this.stage); 然后才可以使用moon.TipsManager.getIns().simpleTips()

egretmoon's People

Contributors

ywx620 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.