• Cocos2d-x学习笔记(十)之 控件类CCControl


      在应用的开发中,无论是Android 操作系统还是iOS 操作系统,其开发框架都提供了控件,包括按键、拖动滑块等,这样提高了开发效率。对于游戏的开发,UI 的开发同样需要控件来提高开发效率。下面我们就来看几个比较常用的UI控件的使用。

      1、拖动滑块的控件类CCControlSlider

     1 // 定义CCControlSlider实例
     2 //参数为图片路径,分别是滑块滑道图片路径、滑块滑动后覆盖滑道图片路径和滑块图片路径
     3 CCCo ntrolSlider *slider = CCControlSlider::create("extensions/
     4 sliderTrack.png","extensions/sliderProgress.png" ,"extensions/
     5 sliderThumb.png");
     6 //设置锚点
     7 slider->setAnchorPoint(ccp(0.5f, 1.0f));
     8 // 设置范围最小值
     9 slider->setMinimumValue(0.0f); 
    10  // 设置范围最大值
    11 slider->setMaximumValue(5.0f);
    12  // 设置滑块的位置
    13 slider->setPosition(ccp(100f,
    14 100.0f));
    15 // 添加回调函数,当滑块被拖动时被调用
    16 slider->addTargetWithActionForControlEvents(this, cccontrol_selector(滑块回调函数), CCControlEventValueChanged);
    17 //把滑块添加到场景中
    18 addChild(slider);
    19 
    20 
    21 //在滑块回调函数中
    22 
    23 //首先获得滑块对象
    24 CCControlSlider* pSlider = (CCControlSlider*)sender;
    25 //通过滑块对象获得滑块目前所在位置的值
    26 pSlider->getValue())->getCString()

      2、开关按钮类CCControlSwitch

     1 // 定义开关控件
     2 //参数分别是背景图片路径、开状态背景图片路径、关状态背景图片路径和开关背景图片路径,文字标签是开文字标签、关文字标签。
     3 CCControlSwitch *switchControl = CCControlSwitch::create
     4 (
     5 CCSprite::create("extensions/switch-mask.png"),
     6 CCSprite::create("extensions/switch-on.png"),
     7 CCSprite::create("extensions/switch-off.png"),
     8 CCSprite::create("extensions/switch-thumb.png"),
     9 CCLabelTTF::create("On", "Arial-BoldMT", 16),
    10 CCLabelTTF::create("Off", "Arial-BoldMT", 16)
    11 );
    12 //设置开关控件的位置
    13 switchControl->setPosition(ccp (0, 0));
    14 //添加到场景中
    15 addChild(switchControl);
    16 //添加回调函数
    17 switchControl->addTargetWithActionForControlEvents(this, cccontrol_selec
    18 tor(回调函数), CCControlEventValueChanged);

      3、按钮类CCControlButton

      按钮类CCControlButton的用法和上面按钮的用法基本一样。这里就不一一举例说明了,在这里只介绍一下按钮类CCControlButton的回调函数的事件常量:CCControlEventTouchDown、CCControlEventTouchDragInside、CCControlEventTouchDragOutside、CCControlEventTouchDragEnter、CCControlEventTouchDragExit、CCControlEventTouchUpInside、CCControlEventTouchUpOutside、CCControlEventTouchCancel等。

  • 相关阅读:
    Dictionary<string, object>不区分大小写
    修改Windows远程桌面端口
    LookupError: unknown encoding: cp65001的问题
    Git命令基本操作备忘
    MariaDB10 修改默认密码
    android去除标题栏
    解决Eclipse中Android SDK Manager图标不见了的问题
    HTML邮件注意事项
    不同内核浏览器的差异以及浏览器渲染简介(转)
    DIV+CSS两种盒子模型
  • 原文地址:https://www.cnblogs.com/atong/p/3274741.html
Copyright © 2020-2023  润新知