×

一、简介与环境搭建

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

CAScale9ImageView(九宫格图片拉伸)


类说明

        CAScale9ImageView是CrossApp提供的一种九宫格拉伸图片的解决方案,我们先来了解一下什么是九宫格图片拉伸。
在App的设计过程中,为了适配不同的手机分辨率,图片大小需要拉伸或者压缩,这样就出现了可以任意调整大小的拉伸样式。


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

属性 说明
OriginalSize 原始尺寸
CapInsets 拉伸区域
InsetLeft 左侧拉伸距离
InsetTop 上侧拉伸距离
InsetRight 右侧拉伸距离
InsetBottom 下侧拉伸距离


CAScale9ImageView 方法(点击方法名可查看方法介绍)

方法 说明
create 创建,默认Frame为(0,0,0,0)
createWithImage 创建,并指定其图像
createWithFrame 创建,并指定其Frame,默认Frame为(0,0,0,0)
createWithCenter 创建,并指定其Center,默认Center为(0,0,0,0)
init 初始化
initWithImage 初始化,并指定其图像
setCapInsets 设置拉伸区域
setInsetLeft 设置左侧拉伸区域
setInsetTop 设置上侧拉伸区域
setInsetRight 设置右侧拉伸区域
setInsetBottom 设置下侧拉伸区域
setColor 设置颜色
getColor 获取颜色
setAlpha 设置透明度
copy 复制
setImage 设置图像
getImage 获取图像
draw 重新绘制图像


CAScale9ImageView
CAScale9ImageView的实现非常巧妙,通过将原纹理资源切割成9部分(PS: 这也是叫九宫图的原因),根据想要的尺寸,完成以下的三个步骤:
    (1)保持4个角部分不变形
    (2)单向拉伸4条边(即在4个角两两之间的边,比如上边,只做横向拉伸)
    (3)双向拉伸中间部分(即九宫图的中间部分,横向,纵向同时拉伸,PS:拉伸比例不一定相同)

CAScale9ImageView

实例代码:
CAScale9ImageView
void FirstViewController::viewDidLoad()
{ //创建
CAScale9ImageView* first9IV = CAScale9ImageView::createWithImage(
CAImage::create("source_material/btn_rounded_normal.png"));
//设置显示大小(拉伸后的大小)
//设置非拉伸区域为(5,5,20,20) first9IV->setCapInsets(DRect(5,5,20,20));
this->getView()->addSubview(first9IV);
first9IV->setFrame(DRect(100, 100, 50, 140)); //添加渲染 //创建
CAImage::create("source_material/btn_rounded_highlighted.png"));
CAScale9ImageView* second9IV = CAScale9ImageView::createWithImage( //设置非拉伸区域与顶部的距离 second9IV->setInsetTop(3.0f);
second9IV->setInsetLeft(3.0f);
//设置非拉伸区域与底部的距离 second9IV->setInsetBottom(3.0f); //设置非拉伸区域与右边的距离 second9IV->setInsetRight(3.0f); //设置非拉伸区域与左边的距离
CALabel* image9Label = CALabel::createWithFrame(DRect(400, 200, 150, 40));
//设置显示区域(拉伸后的大小)
second9IV->setFrame(DRect(400, 200, 150, 40));
//添加渲染 this->getView()->addSubview(second9IV);
this->getView()->addSubview(image9Label);
//创建 image9Label->setText(UTF8("使用九图"));
image9Label->setTextAlignment(CATextAlignmentCenter);
image9Label->setVerticalTextAlignmet(CAVerticalTextAlignmentCenter);
imageView->setImage(CAImage::create("source_material/btn_rounded_highlighted.png"));
//不使用9宫格拉伸 设置大小与上同 CAImageView* imageView = CAImageView::createWithFrame(DRect(400, 300, 150, 40)); //设置显示图片 //添加渲染 this->getView()->addSubview(imageView); //创建
imageLabel->setVerticalTextAlignmet(CAVerticalTextAlignmentCenter);
CALabel* imageLabel = CALabel::createWithFrame(DRect(400, 300, 150, 40)); imageLabel->setText(UTF8("不用九图")); imageLabel->setTextAlignment(CATextAlignmentCenter); this->getView()->addSubview(imageLabel);
}


CAScale9ImageView 属性说明

OriginalSize

类型:DSize

解释:原始尺寸,get{}。


CapInsets

类型:DSize

解释:拉伸区域,get{}。


InsetLeft

类型:float

解释:左侧拉伸距离。get{}。


InsetTop

类型:float

解释:上侧拉伸距离。get{}。


InsetRight

类型:float

解释:右侧拉伸距离。get{}。


InsetBottom

类型:float

解释:下侧拉伸距离。get{}。


CAScale9ImageView 方法说明

static CAScale9ImageView* create();

返回值:static CAScale9ImageView*

参数:

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


static CAScale9ImageView* createWithImage(CAImage* image);

返回值:static CAScale9ImageView*

参数:

类型 参数名 说明
CAImage* image 图像

解释创建,并指定其图像


static CAScale9ImageView* createWithFrame(const DRect& rect);

返回值:static CAScale9ImageView*

参数:

类型 参数名 说明
const DRect& rect 区域大小

解释创建,并指定其Frame,默认Frame为(0,0,0,0)


static CAScale9ImageView* createWithCenter(const DRect& rect);

返回值:static CAScale9ImageView*

参数:

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

解释创建,并指定其Center,默认Center为(0,0,0,0)


virtual bool init();

返回值:virtual bool

参数:

解释初始化


virtual bool initWithImage(CAImage* image);

返回值:virtual bool

参数:

类型 参数名 说明
CAImage* image 图像

解释初始化,并指定其图像


virtual void setCapInsets(const DRect& capInsets);

返回值:virtual void

参数:

类型 参数名 说明
const DRect& capInsets 拉伸区域

解释设置拉伸区域


virtual void setInsetLeft(float insetLeft);

返回值:virtual void

参数:

类型 参数名 说明
float insetLeft 左侧拉伸区域

解释设置左侧拉伸区域


virtual void setInsetTop(float insetTop);

返回值:virtual void

参数:

类型 参数名 说明
float insetTop 上侧拉伸区域

解释设置上侧拉伸区域


virtual void setInsetRight(float insetRight);

返回值:virtual void

参数:

类型 参数名 说明
float insetRight 右侧拉伸区域

解释设置右侧拉伸区域


virtual void setInsetBottom(float insetBottom);

返回值:virtual void

参数:

类型 参数名 说明
float insetBottom 下侧拉伸区域

解释设置下侧拉伸区域


virtual void setColor(const CAColor4B& color);

返回值:virtual void

参数:

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

解释设置颜色


virtual const CAColor4B& getColor();

返回值:virtual const CAColor4B&

参数:

解释获取颜色


virtual void setAlpha(float alpha);

返回值:virtual void

参数:

类型 参数名 说明
float alpha 透明度

解释设置透明度


virtual CAView* copy();

返回值:virtual CAView*

参数:

解释复制


virtual void setImage(CAImage* image);

返回值:virtual void

参数:

类型 参数名 说明
CAImage* image 图像

解释设置图像


using CAView::getImage;

返回值:using

参数:

解释获取图像


virtual void draw(void);

返回值:virtual void

参数:

类型 参数名 说明
void void

解释重新绘制图像


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)