(NO.00001)iOS游戏SpeedBoy Lite成形记(十五)
2024-10-07 00:59:59
现在啃第2个问题:如何让玩家输入赌注金额.
实现的方法有很多种,比如可以限制玩家只能从特定的金额中选择,把每个选择做成一个按钮即可.以下是一个假想选择窗口的示意图:
这样没有玩家的输入问题了.缺点是不太自由.
我们希望实现一个用户可以输入任意金额的功能.因为要实现为一个弹出窗口的模式,所以下面我们首先在SpriteBuilder中把基本的窗口画出来.
打开SpriteBuilder,在Layers文件夹中新建一个Node文件PopupMoneyLayer.ccb,然后将网上找到的窗口背景图片拖入CCNode控件,接下来依次添加各个可视元素,注意所有可视元素皆为背景图片节点的子节点:
调整所有子节点的坐标类型为百分比.如上图从上到下依次为标签节点,文本框节点(CCTextField)和按钮节点.同时添加文本框到代码的连接:_money.我们只关心后两者的回调方法:分别将其方法名称设置为TextmoneyEntered和closePopup:
最后别忘了给该Layer文件的根节点设置自定义类:PopupLayer.
现在切换回Xcode,新建类PopupLayer,继承自CCNode.添加文本框的实例变量,外加上面提到的2个回调方法.方法内容先留空,一会再来实现:
@implementation PopupLayer{
CCTextField *_moneyText;
}
-(void)moneyEntered{
}
-(void)closePopup{
}
下面将要实现(菜单)窗口的弹出和关闭功能.在哪实现呢?因为都是在GameScene之上弹出,所以放在GameScene.m里面吧.
下一篇再会 ;)
最新文章
- 习题 5: 更多的变量和打印 | 笨办法学 Python
- [原创]Lodop打印, 以及Lodop引用css文件控制打印样式的问题.
- 学习ASP.NET缓存机制
- Java for LeetCode 076 Minimum Window Substring
- SpringMVC @Value取值(取properties属性文件的属性值)
- Codeforces 414B Mashmokh and ACM
- 全面修复IE,注册IE所有dll
- [置顶] 如何使用c3p0+spring连接oracle数据库
- 移动端布局最佳实践(viewport+rem)
- electron应用以管理员权限启动
- Java堆和栈的区别和介绍,JVM的堆和栈
- letCode-2
- springboot笔记1(转载于puresmile)
- &; 引用
- oozie JAVA Client 编程提交作业
- 【*】Redis实战场景中相关问题
- MySQL 复习笔记
- nodejs+mysql入门实例(删)
- [POI2011]Garbage 欧拉回路
- js 通过id或class获得的对象说明