zoukankan      html  css  js  c++  java
  • cocos代码研究(20)Widget子类LoadingBar学习笔记

    理论基础

    在一些操作中可视化指示进度条。显示给用户一个条表示操作已经完成了多少,继承自 Widget。

    代码实践

    static LoadingBar * create ()
    创建一个空的LoadingBar。

    static LoadingBar * create (const std::string &textureName, //LoadingBar背景纹理图片文件。
    float percentage=0) //显示的进度百分比。
    使用一个纹理和一个进度百分比创建一个LoadingBar。

    static LoadingBar * create (const std::string &textureName, //LoadingBar背景纹理图片文件。
    TextureResType texType, //LoadingBar背景纹理类型。
    float percentage=0) //显示的进度百分比。
    使用一个纹理、纹理类型和一个进度百分比创建一个LoadingBar。

    void setDirection (Direction direction)
    改变进度显示方向。

    Direction getDirection () const
    获取进度显示方向。

    void loadTexture (const std::string &texture, //LoadingBar背景纹理图片文件。
    TextureResType texType=TextureResType::LOCAL)
    LoadingBar载入背景纹理。

    void setPercent (float percent)
    改变LoadingBar的当前进度。

    float getPercent () const
    获取LoadingBar当前的进度。

    void setScale9Enabled (bool enabled)
    是否开启九宫格渲染。

    bool isScale9Enabled () const
    请求LoadingBar是否开启了九宫格渲染。

    void setCapInsets (const Rect &capInsets)
    设置CapInsets。 只有当开启九宫格渲染后才需要设置。

    const Rect & getCapInsets () const
    请求LoadingBar的capInsets。

    实例:

    // Create the loading bar
    LoadingBar* loadingBar = LoadingBar::create("cocosui/sliderThumb.png");
    loadingBar->setTag(0);
    loadingBar->ignoreContentAdaptWithSize(false);
    //loadingBar->setScale9Enabled(true);
    loadingBar->setCapInsets(Rect(0, 0, 0, 0));
    loadingBar->setContentSize(Size(200, 80));
    loadingBar->setDirection(LoadingBar::Direction::LEFT);
    loadingBar->setPercent(100);
    loadingBar
    ->setTouchEnabled(true); loadingBar->addTouchEventListener([=](Ref* sender, Widget::TouchEventType type){   if (type == Widget::TouchEventType::ENDED) {     if (loadingBar->isScale9Enabled())     {       loadingBar->setScale9Enabled(false);     }     else       loadingBar->setScale9Enabled(true);     } }); loadingBar->setPosition(Vec2(widgetSize.width / 2.0f, widgetSize.height / 2.0f + loadingBar->getContentSize().height / 4.0f));
  • 相关阅读:
    安全测试WEB安全渗透测试基础知识(三)
    二次开发的Selenium Demo版本
    服务端性能测试工具校验v1.2
    渗透H5棋牌游戏棋牌游戏开发
    安全测试WEB安全渗透测试基础知识(一)
    源码网址
    使用ScribeFire写网易博客 imsho@126的日志 网易博客
    ScribeFire:和firefox完美结合的博客离线编辑器 博客联盟
    如何设置让 Everything 在 Win7 下开机启动 小众软件
    流言终结者——C语言内存管理 michael的个人空间 开源中国社区
  • 原文地址:https://www.cnblogs.com/damowang/p/4861800.html
Copyright © 2011-2022 走看看