创建一个button 有3种类型
类型:
CAButtonTypeRoundedRect: 圆角边框(默认是蓝色)
CAButtonTypeSquareRect: 矩形边框
CAButtonTypeCustom: 无边框
CAButton* defaultBtn = CAButton::create(类型);
创建好了一个button后,设置button的各种属性
defaultBtn->setCenter(CADipRect(size.width*0.25 - 50, size.height*0.5, size.width*0.25, size.height*0.1));
//设置中心点坐标,和按钮大小,CCRect和CADipRect貌似一样,在这个都可以用
在CAControl中定义了5种标题状态
typedef enum
{
CAControlStateNormal = 0, //正常还未点击
CAControlStateHighlighted, //点击时
CAControlStateDisabled, //按钮不可以点击,操作无效
CAControlStateSelected, //点击过后,也叫选中时
CAControlStateAll //全状态 (正常,点击,点击后)
}CAControlState;
defaultBtn->setTitleForState(CAControlStateNormal, UTF8("正常"));//按钮标题为中文的时候,要加UTF8
defaultBtn->setTitleColorForState(CAControlStateNormal, CAColor_white);//还未点击时,设置辩题的颜色
defaultBtn->setTitleForState(CAControlStateSelected, UTF8("选中"));
defaultBtn->setTitleForState(CAControlStateHighlighted, UTF8("高亮"));
defaultBtn->setBackGroundViewForState(CAControlStateNormal, CAScale9ImageView::createWithImage \
(CAImage::create("source_material/round3.png"))); //设置按钮背景,可以是图片,也可以是指定颜色
defaultBtn->setBackGroundViewForState(CAControlStateHighlighted, CAScale9ImageView::createWithImage \
(CAImage::create("source_material/page_rect_n.png")));
一个直角的背景图片,在CAButtonTypeSquareRect中还是直角
一个圆角的背景图片,在CAButtonTypeSquareRect中还是圆角
只要设置了背景图,CAButtonTypeSquareRect,CAButtonTypeSquareRect都不会再出现默认颜色的边框
//ps: 图片具体的拉伸效果,需要具体操作→_→这是废话
点击按钮响应函数:
defaultBtn->addTarget(this, CAControl_selector(FirstViewController::buttonCallBack), CAControlEventTouchUpInSide);
// this 指的是控制器对象 ,这个控制器对象的函数 ,触发条件(按下)
void buttonCallBack(CAControl* btn, CCPoint point);//定义的这个回调函数必须有两个参数(CAControl和CCPoint),框架要求
最后把按钮添加到控制器上显示出来
this.addSubview(defaultBtn);