×

一、简介与环境搭建

CrossApp简介CrossApp摘要CrossApp坐标系浅谈CrossApp屏幕适配方案CrossApp源码结构CrossApp的MVC模式CrossApp项目结构及入口CrossApp内存管理CrossApp类结构图创建CrossApp工程CAVector、CAList、CADeque、CAMap(数据容器)Windows 开发下VS2013环境搭建Windows 开发下Android环境配置Mac OS 开发下Xcode环境搭建Mac OS 下iOS移植android环境配置

二、CrossApp简单控件的使用

DLayout(自适应布局)CALabel(显示文本)CAImage、CAImageView(显示一张图片)CAScale9ImageView(九宫格图片拉伸)CAButton(按钮)CATextView(多行输入框)CATextViewDelegateCASwitch(开关控件)CAProgress(进度条)CAAlertView(提示框)CAScrollView(滚动视图)CAScrollViewDelegateCAListView(列表)CAListViewDataSourceCAListViewDelegateCATableView(表单视图)CATableViewDataSourceCATableViewDelegateCATableViewCellCACollectionView(容器)CACollectionViewDataSourceCASlider(滑动条)CAStepper(步进控件)CAPageView(页面切换)CAPageViewDelegateCAWaterfallView(瀑布流控件)CAWaterfallViewDataSourceCAWaterfallViewDelegateCAWaterfallViewCellCATextField(输入框)CATextFieldDelegateCAAutoCollectionView(自动化布局容器)CAAutoCollectionViewDataSourceCAAutoCollectionViewDelegateCAVideoPlayerControlView(视频播放器控制视图)CAVideoPlayerControlViewDelegateCAWebView(Web视图控件)CAWebViewDelegateCAGifView(显示Gif图片)CARenderImage(图像渲染)CASegmentedControl(分段控制)CAPickerView(视图选择器)CAPickerViewDataSourceCAPickerViewDelegateCAActivityIndicatorView(活动指示器)CrossApp UIEdit(UI编辑器)

三、视图控制

CAViewController(视图控制器)CADrawerController(抽屉控制器)CANavigationController(导航控制器)CANavigationBarDelegateCANavigationBarItemCANavigationBarCATabBarController(标签栏控制器)CATabBarDelegateCATabBarItem

四、调用系统支持

CADevice

五、数据的解析与存储

CAUserDefault简单存储SQlite的使用json解析xml解析

六、网络

网络通信之httphttp请求网络图

七,动画

CAViewAnimation(动画实现)

八、宏定义

宏定义

九、其他控件的使用

CAViewCAViewDelegateCATextField(输入框1.2以前版本)CAObjectCAResponderCAPullToRefreshViewCAControlCAWindowCABarItemCABarButtonItemCASchedulerCAMediaDelegateCAKeypadDelegate

CAProgress(进度条)


类说明

CAProgress是进度条控件,主要用于显示任务进度。


CAProgress 属性(点击查看方法介绍)

属性 说明
ProgressTintColor 设置进度的颜色
ProgressTrackColor 设置背景的颜色
ProgressTintImage 设置进度的图片
ProgressTrackImage 设置背景的图片


CAProgress 方法(点击查看方法介绍)

方法 说明
init 初始化
create 创建,默认Frame为(0,0,0,0)
setColor 设置进度条颜色
setProgress 设置进度
getProgress 获取进度


CAProgress是一个很简单的控件,其使用方式也比较便捷,我们只需要在相应的逻辑里对齐值进行增减便可以了,下面我们的实例中,就演示了在CrossApp的定时器中,每间隔一段时间增减CAProgress的值,当CAProgress值超过最大时设置为0的循环演示。


首先我们在FirstViewController.h添加一个定时器函数

//定时器函数
    void updateProgressValue(float dt);

然后在FirstViewController.cpp中添加一下代码:

void FirstViewController::viewDidLoad()
{
    // Do any additional setup after loading the view from its nib.
    DSize size = this->getView()->getBounds().size;
    CAProgress* progress = CAProgress::create();
     
    //设置显示区域
    progress->setCenter(DRect(size.width * 0.5,  200, 300, 60));
     
    //设置进度值(0--1)之间的float
    progress->setProgress(0.5f);
     
    //设置进度的颜色
    progress->setProgressTintColor(CAColor_orange);
     
    //设置进度的图片
    //progress->setProgressTintImage(CAImage::create("source_material/btn_rounded_highlighted.png"));
     
    //设置背景的颜色
    progress->setProgresstrackColor(CAColor_yellow);
    
    //设置背景的图片
    //progress->setProgressTrackImage(CAImage::create("source_material/btn_rounded3D_selected.png"));
    
    //设置tag值
    progress->setTag(1);
    
    //添加到屏幕
    this->getView()->addSubview(progress);
     
    //创建Label用于显示progress的值
    CALabel* label = CALabel::createWithCenter(DRect(size.width * 0.5, 100, 200, 100));
    
    //水平剧中
    label->setTextAlignment(CATextAlignmentCenter);
    
    //显示progress的值
    label->setText(crossapp_format_string("Progress:%.02f"));
     
    //设置tag值
    label->setTag(2);
    
    //添加到屏幕
    this->getView()->addSubview(label);
     
    //启动定时器,间隔0.05秒调用
    CAScheduler::schedule(schedule_selector(FirstViewController::updateProgressValue), this, 0.05, false);
}
     
//定时器函数
void FirstViewController::updateProgressValue(float dt)
{
    //根据tag获得progress对象
    CAProgress* progress = (CAProgress*) this->getView()->getSubviewByTag(1);
    
    //获得progress的值
    float value = progress->getProgress();
     
    if (value < 1.0f)
    {
        value = value + 0.01;
    }
    else
    {
        value = 0;
    }
     
    //赋值
    progress->setProgress(value);
     
    //根据tag获得label
    CALabel* label = (CALabel*)this->getView()->getSubviewByTag(2);
     
    //显示value值
    label->setText(crossapp_format_string("Progress:%.02f", value));
}


CAProgress 属性说明

ProgressTintColor

类型:CAColor4B

解释:设置进度的颜色。set/get{}。


ProgressTrackColor

类型:CAColor4B

解释:设置背景的颜色。set/get{}。


ProgressTintImage

类型:CAImage*

解释:设置进度的图片。set/get{}。


ProgressTrackImage

类型:CAImage*

解释:设置背景的图片。set/get{}。


CAProgress 方法说明

bool init();

返回值:bool

参数:

解释:初始化


static CAProgress* create();

返回值:static CAProgress*

参数:

解释:创建,默认Frame为(0,0,0,0)


virtual void setColor(const CAColor4B& color);

返回值:virtual void

参数:

类型
参数名
说明
const CAColor4B& color 颜色

解释:设置进度条颜色


void setProgress(float progress, bool animated = false);

返回值:void

参数:

类型
参数名
说明
float progress 进度值
bool animated = false 是否显示动画

解释:设置进度


float getProgress();

返回值:float

参数:

解释:获取进度


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)