×

一、简介与环境搭建

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

CAButton(按钮)


类说明

在app开放中按钮是最常用的控件之一,大家对Button的需要也多种多样,CrossApp提供了CAButton,其使用思路主要是根据状态设置来完成的。

CAButton按钮类,主要为了接收用户的点击操作,从而触发特定的事件。


CAButton 属性 (点击属性名可查看属性介绍)

属性 说明
AllowsSelected 是否可以选择
Selected 是否被选择
TouchClick 是否被触摸点击


CAButton 方法 (点击属性名可查看属性介绍)

方法 说明
create 创建
createWithFrame 创建,并指定其Frame
createWithCenter 创建,并指定其Center
init 初始化
setBackGroundViewForState 设置Button的背景View
getBackGroundViewForState 获取Button的背景View
setImageForState 设置Button的图片(不支持九宫格)
getImageForState 获取Button的图片(不支持九宫格)
setTitleForState 设置Button标题的显示文本
getTitleForState 获取Button标题的显示文本
setImageColorForState 设置Button的图像颜色和状态
setTitleColorForState 设置Button的标题颜色和状态
setTitleFontName 设置Button文本的字体
setImageOffset 设置图像偏移量
setImageSize 设置图像大小
setTitleOffset 设置标题偏移量
setTitleLabelSize 设置标题标签大小
setTitleFontSize 设置标题字体大小
setControlState 设置状态
interruptTouchState 中断接触状态
ccTouchBegan 触摸事件开始时的回调函数
ccTouchMoved 触摸事件中触点移动时的回调函数
ccTouchEnded 触摸事件结束时的回调函数
ccTouchCancelled 触摸非正常结束时的回调函数。(例如:电话或锁屏)
addTarget 添加回调事件
removeTarget 删除回调事件
removeAllTargets 删除所有回调事件


/*
    创建一个Button
    参数类型CAButtonType:CAButtonTypeCustom、CAButtonTypeSquareRect、CAButtonTypeRoundedRect
    CAButtonTypeCustom:默认看不见任何效果,需要自己定义效果
    CAButtonTypeSquareRect:矩形边框类型
    CAButtonTypeRoundedRect:圆角边框类型
*/
CAButton* firstButton = CAButton::create(CAButtonTypeRoundedRect);
 
/*
    设置Button的状态显示文本
    CAControlStateNormal:缺省状态
    CAControlStateHighlighted:高亮状态
    CAControlStateDisabled:禁用状态
    CAControlStateSelected:选中状态
    CAControlStateAll:全部状态
*/
firstButton->setTitleForState(CAControlStateAll,"Button");
 
/*
    设置Button的状态显示文本的颜色
*/
firstButton->setTitleColorForState(CAControlStateAll, ccc4(0, 0, 0, 255));
 
//设置Button文本的字体
firstButton->setTitleFontName("宋体");
 
/*
    设置Button的状态的背景View
*/
//九宫格图
//firstButton->setBackGroundViewForState(CAControlStateAll,CAScale9ImageView::createWithImage("HelloWorld.png"));
 
//设置纯色View
//firstButton->setBackGroundViewForState(CAControlStateAll, CAView::createWithColor(CAColor_red));
 
/*
    设置Button的状态的图片(不支持九宫格)
*/
//firstButton->setImageForState(CAControlStateAll,CAImage::create("HelloWorld.png"));
 
/*
    设置Button的状态
*/
//firstButton->setControlState(CAControlStateHighlighted);
 
/*
    设置Frame(如果不设置Frame,默认是不显示的)
*/
firstButton->setFrame(DRect(100,100,200,80));
 
//添加到绘制
this->getView()->addSubview(firstButton);
 
/*
    设置Button的监听
    CAControlEventTouchDown:按下按钮响应
    CAControlEventTouchDownRepeat:(未实现预留)双击时响应
    CAControlEventTouchMoved:触点在Button范围内移动
    CAControlEventTouchMovedOutSide:触点移动到Button范围外
    CAControlEventTouchUpInSide:触点在Button范围内抬起
    CAControlEventTouchUpSide:Button抬起
    CAControlEventTouchValueChanged:此状态在CAButton无效,在CASlider中响应
*/
firstButton->addTarget(this, CAControl_selector(FirstViewController::callbackDown), CAControlEventTouchDown);
 
//此状态6.0版本未实现
//firstButton->addTarget(this, CAControl_selector(FirstViewController::callbackDownRepeat), CAControlEventTouchDownRepeat);
 
firstButton->addTarget(this, CAControl_selector(FirstViewController::callbackMoved), CAControlEventTouchMoved);
 
firstButton->addTarget(this, CAControl_selector(FirstViewController::callbackMovedOutSide), CAControlEventTouchMovedOutSide);
 
firstButton->addTarget(this, CAControl_selector(FirstViewController::callbackUpInSide), CAControlEventTouchUpInSide);
 
firstButton->addTarget(this, CAControl_selector(FirstViewController::callbackUpSide), CAControlEventTouchUpSide);
 
//此状态6.0版本 Button无效
//firstButton->addTarget(this, CAControl_selector(FirstViewController::callbackValueChanged), CAControlEventTouchValueChanged);
 
/*
    中断监听
*/
//firstButton->interruptTouchState();

监听的回调函数也很简单:有两个参数:CAControl* 和DPoint

CAControl是Button本身

DPoint是触点的坐标

void FirstViewController::callbackDown(CAControl* control, DPoint point)
{
        CCLog("callbackDown()-->");
}
 
void FirstViewController::callbackDownRepeat(CAControl* control, DPoint point)
{
        CCLog("callbackDownRepeat()-->");
}
 
void FirstViewController::callbackMoved(CAControl* control, DPoint point)
{
        CCLog("callbackMoved()-->");
}
 
void FirstViewController::callbackMovedOutSide(CAControl* control, DPoint point)
{
        CCLog("callbackMovedOutSide()-->");
}
 
void FirstViewController::callbackUpInSide(CAControl* control, DPoint point)
{
        CCLog("callbackUpInSide()-->");
        //((CAButton*)control)->setTitleForState(CAControlStateAll, "changed");
}
 
void FirstViewController::callbackUpSide(CAControl* control, DPoint point)
{
        CCLog("callbackUpSide()-->");
}
 
void FirstViewController::callbackValueChanged(CAControl* control, DPoint point)
{
        CCLog("callbackValueChanged()-->");
}

CAButton 属性说明

AllowsSelected

类型:bool

解释:是否可以选择。is/set{}。


Selected

类型:bool

解释:是否被选择。is{}。


TouchClick

类型:bool

解释:是否被触摸点击。is{}。


CAButton 方法说明

static CAButton* create(const CAButtonType& buttonType);

返回值:static CAButton*

参数:

类型
参数名 说明
const CAButtonType& buttonType 按钮类型

解释:创建

typedef enum
{
    CAButtonTypeCustom = 0,     默认看不见任何效果,需要自己定义效果
    CAButtonTypeSquareRect,     矩形边框类型
    CAButtonTypeRoundedRect,    圆角边框类型
} CAButtonType;

static CAButton* createWithFrame(const DRect& rect, const CAButtonType& buttonType);

返回值:static CAButton*

参数:

类型
参数名 说明
const DRect& rect 区域大小
 const CAButtonType& buttonType 按钮类型

解释:创建,并指定其Frame

typedef enum
{
    CAButtonTypeCustom = 0,     默认看不见任何效果,需要自己定义效果
    CAButtonTypeSquareRect,     矩形边框类型
    CAButtonTypeRoundedRect,    圆角边框类型
} CAButtonType;


static CAButton* createWithCenter(const DRect& rect, const CAButtonType& buttonType);

返回值:static CAButton*

参数:

类型
参数名 说明
const DRect& rect 中心点的位置及大小
 const CAButtonType& buttonType 按钮类型

解释:创建,并指定其Center

typedef enum
{
    CAButtonTypeCustom = 0,     默认看不见任何效果,需要自己定义效果
    CAButtonTypeSquareRect,     矩形边框类型
    CAButtonTypeRoundedRect,    圆角边框类型
} CAButtonType;


virtual bool init();

返回值:virtual bool

参数:

解释:初始化


void setBackGroundViewForState(const CAControlState& controlState, CAView *var);

返回值:void

参数:

类型
参数名 说明
const CAControlState& controlState Button的状态
CAView *var 图像

解释:设置Button的状态的背景View

typedef enum
{
    CAControlStateNormal:       缺省状态
    CAControlStateHighlighted:  高亮状态
    CAControlStateDisabled:     禁用状态
    CAControlStateSelected:     选中状态
    CAControlStateAll:          全部状态
}CAControlState;


CAView* getBackGroundViewForState(const CAControlState& controlState);

返回值:CAView*

参数:

类型
参数名 说明
const CAControlState& controlState Button的状态

解释:获取Button的状态的背景View

typedef enum
{
    CAControlStateNormal:       缺省状态
    CAControlStateHighlighted:  高亮状态
    CAControlStateDisabled:     禁用状态
    CAControlStateSelected:     选中状态
    CAControlStateAll:          全部状态
}CAControlState;

void setImageForState(const CAControlState& controlState, CAImage* var);

返回值:void

参数:

类型
参数名 说明
const CAControlState& controlState Button的状态
CAImage* var 图像

解释:设置Button的状态和图像(不支持九宫格)

typedef enum
{
    CAControlStateNormal:       缺省状态
    CAControlStateHighlighted:  高亮状态
    CAControlStateDisabled:     禁用状态
    CAControlStateSelected:     选中状态
    CAControlStateAll:          全部状态
}CAControlState;

CAImage* getImageForState(const CAControlState& controlState);

返回值:CAImage*

参数:

类型
参数名 说明
const CAControlState& controlState Button的状态

解释:获取Button的状态和图像(不支持九宫格)

typedef enum
{
    CAControlStateNormal:       缺省状态
    CAControlStateHighlighted:  高亮状态
    CAControlStateDisabled:     禁用状态
    CAControlStateSelected:     选中状态
    CAControlStateAll:          全部状态
}CAControlState;

void setTitleForState(const CAControlState& controlState, const std::string& var);

返回值:void

参数:

类型
参数名 说明
const CAControlState& controlState Button的状态
const std::string& var 文本

解释:设置Button标题的显示文本

typedef enum
{
    CAControlStateNormal:       缺省状态
    CAControlStateHighlighted:  高亮状态
    CAControlStateDisabled:     禁用状态
    CAControlStateSelected:     选中状态
    CAControlStateAll:          全部状态
}CAControlState;

const std::string& getTitleForState(const CAControlState& controlState);

返回值:const std::string&

参数:

类型
参数名 说明
const CAControlState& controlState Button的状态

解释:获取Button标题的显示文本

typedef enum
{
    CAControlStateNormal:       缺省状态
    CAControlStateHighlighted:  高亮状态
    CAControlStateDisabled:     禁用状态
    CAControlStateSelected:     选中状态
    CAControlStateAll:          全部状态
}CAControlState;

void setImageColorForState(const CAControlState& controlState, const CAColor4B& var);

返回值:void

参数:

类型
参数名 说明
const CAControlState& controlState Button的状态
const CAColor4B& var 颜色

解释:设置Button的图像颜色和状态

typedef enum
{
    CAControlStateNormal:       缺省状态
    CAControlStateHighlighted:  高亮状态
    CAControlStateDisabled:     禁用状态
    CAControlStateSelected:     选中状态
    CAControlStateAll:          全部状态
}CAControlState;

void setTitleColorForState(const CAControlState& controlState, const CAColor4B& var);

返回值:void

参数:

类型
参数名 说明
const CAControlState& controlState Button的状态
const CAColor4B& var 颜色

解释:设置Button的标题颜色和状态

typedef enum
{
    CAControlStateNormal:       缺省状态
    CAControlStateHighlighted:  高亮状态
    CAControlStateDisabled:     禁用状态
    CAControlStateSelected:     选中状态
    CAControlStateAll:          全部状态
}CAControlState;

void setTitleFontName(const std::string& var);

返回值:void

参数:

类型
参数名 说明
const std::string& var 文本

解释:设置Button文本的字体


void setImageOffset(const DSize& offset);

返回值:void

参数:

类型
参数名 说明
const DSize& offset 偏移量

解释:设置图像偏移


void setImageSize(const DSize& size);

返回值:void

参数:

类型
参数名 说明
const DSize& size 大小

解释:设置图像大小


void setTitleOffset(const DSize& offset);

返回值:void

参数:

类型
参数名 说明
const DSize& offset 偏移量

解释:设置标题偏移量


void setTitleLabelSize(const DSize& size);

返回值:void

参数:

类型
参数名 说明
const DSize& size 大小

解释:设置标题标签大小


void setTitleFontSize(float fontSize);

返回值:void

参数:

类型
参数名 说明
float fontSize 字体大小

解释:设置标题字体大小


virtual void setControlState(const CAControlState& var);

返回值:virtual void

参数:

类型
参数名 说明
const CAControlState& var 状态

解释:设置状态

typedef enum
{
    CAControlStateNormal:       缺省状态
    CAControlStateHighlighted:  高亮状态
    CAControlStateDisabled:     禁用状态
    CAControlStateSelected:     选中状态
    CAControlStateAll:          全部状态
}CAControlState;

void interruptTouchState();

返回值:void

参数:

解释:中断接触状态


virtual bool ccTouchBegan(CATouch *pTouch, CAEvent *pEvent);

返回值:virtual bool

参数:

类型
参数名 说明
CATouch *pTouch 触摸传递对象
CAEvent *pEven 此参数待定

解释:触摸事件开始时的回调函数


virtual void ccTouchMoved(CATouch *pTouch, CAEvent *pEvent);

返回值:virtual void

参数:

类型
参数名 说明
CATouch *pTouch 触摸传递对象
CAEvent *pEven 此参数待定

解释:触摸事件中触点移动时的回调函数


virtual void ccTouchEnded(CATouch *pTouch, CAEvent *pEvent);

返回值:virtual void

参数:

类型
参数名 说明
CATouch *pTouch 触摸传递对象
CAEvent *pEven 此参数待定

解释:触摸事件结束时的回调函数


virtual void ccTouchCancelled(CATouch *pTouch, CAEvent *pEvent);

返回值:virtual void

参数:

类型
参数名 说明
CATouch *pTouch 触摸传递对象
CAEvent *pEven 此参数待定

解释:触摸非正常结束时的回调函数。(例如:电话或锁屏)


using CAControl::addTarget;

返回值:using

参数:

解释:添加回调事件


using CAControl::removeTarget;

返回值:using

参数:

解释:删除回调事件


using CAControl::removeAllTargets;

返回值:using

参数:

解释:删除所有回调事件


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)