CALabel(显示文本)
类说明
标签文字类,用于显示文本。
CALabel 属性 (点击属性名可查看属性介绍)
属性 | 说明 |
Text | label的文本内容 |
FontName | label的字体 |
FontSize | label的字体大小 |
Dimensions | label的尺寸大小 |
VerticalTextAlignmet | 文本的竖直对齐方式 |
TextAlignment | 文本的水平对齐方式 |
NumberOfLine | label的行数 |
UnderLine | label的字体下划线 |
Bold | label的字体加粗 |
Italics | label的字体斜体 |
EnableCopy | label的字体启用复制 |
LineSpacing | label的字体的行间距 |
WordWrap | label的字体自动换行 |
LabelSize | 获取label的大小 |
CALabel 方法 (点击方法名可查看方法介绍)
方法 | 说明 |
sizeToFit | 设置自适应label宽度 |
unsizeToFi | 取消设置自适应label宽度 |
applyStyle | label的样式风格 |
applyStyle | label的应用风格 |
createWithFrame | 创建,并指定其Frame,默认Frame为(0,0,0,0) |
createWithCenter | 创建,并指定其Frame,默认Center为(0,0,0,0) |
initWithFrame | 初始化,并指定其Frame |
initWithCenter | 初始化,并指定其Center |
setColor | 设置label的颜色 |
getColor | 获取label的颜色 |
使用介绍
第一:Label的行数:
其实Label行数是受Label的范围的影响,假如你设置的Frame太小,你超出Frame范围的行数是不被显示的。
例如:Frame的范围只够显示2行,那么NumberOfLine设置比2大也是最多显示2行。
第二:win开放中文字符:
假如是是在win下开发CrossApp那么,label->setText("中文");这样直接设置中文字符,CALabel的显示不正常的。
我们可以设置转为UTF8格式,格式如下:label->setText(UTF8("伟大的矮人王索林·橡木盾"));
第三:LabelSize 版本6.0有个bug
LabelSize在你缩放CALabel和改变CALabel的文本内容时候,LabelSize的值都不会变化。正常情况下应该是在文本 内容或字体大小发生改变时,LabelSize也跟着改变
//通过设置Center来创建一个CALabel (CRect前两个参数是中心点x,y;后两个参数是width,height)
CALabel* label = CALabel::createWithCenter(DRect(100, 200, 400, 400));
//设置文本水平方向的对齐方式
label->setTextAlignment(CATextAlignmentCenter);
//设置文本竖直方向的对齐方式
label->setVerticalTextAlignmet(CAVerticalTextAlignmentCenter);
//设置文本大小(CROSSAPP_ADPTATION_RATIO 是用于适配的缩放比)
label->setFontSize(72 * CROSSAPP_ADPTATION_RATIO);
//设置文本内容
label->setText("Hello World!");
//设置行数
label->setNumberOfLine(10);
//设置文本颜色
label->setColor(CAColor_white);
//设置文本字体
label->setFontName("fonts/arial.ttf");
this->getView()->insertSubview(label, 1);
CALabel 属性说明
类型:string
解释:设置文本显示的字符串。 set/get{}。
类型:string
解释:设置文本显示的字体。FontName
类型:unsigned int
解释:设置文本小时的字体大小。set/get{}。
类型:DSize
解释:设置文本显示的尺寸大小。set/get{}。
类型:CAVerticalTextAlignment
解释:设置文本显示的竖直对齐方式,枚举类型。set/get{}。
typedef enum
{
CAVerticalTextAlignmentTop, //顶部对齐方式
CAVerticalTextAlignmentCenter, //中心对齐方式
CAVerticalTextAlignmentBottom, //底部对齐方式
} CAVerticalTextAlignment;
类型:CATextAlignment
解释:设置文本显示的水平对齐方式,枚举类型。set/get{}。
typedef enum
{
CATextAlignmentLeft, //左对齐方式
CATextAlignmentCenter, //中心对齐方式
CATextAlignmentRight, //右对齐方式
} CATextAlignment;
类型:unsigned int
解释:设置文本显示的行数。set/get{}。set/get{}。
类型:bool
解释:设置文本显示的字体下划线。set/get{}。
类型:bool
解释:设置文本显示的字体加粗。set/get{}。
类型:bool
解释:设置文本显示的字体斜体。set/get{}。
类型:bool
解释:设置文本显示的字体启用复制。set/get{}。
类型:int
解释:设置文本显示的字体行间距。set/get{}。
类型:bool
解释:设置文本显示的字体自动换行。set/get{}。
示例:
CALabel* c_Label = CALabel::createWithCenter(DRect(size.width*0.5,size.height*0.5,220,500));
c_Label->setText("CrossApp is a cross platform application engine,developed by 9miao.com");
c_Label->setTextAlignment(CATextAlignmentCenter);
c_Label->setColor(CAColor_orange);
c_Label->setFontSize(28);
this->getView()->addSubview(c_Label);
LabelSize
类型:DSize
解释:获取Label的大小。get{}。
CALabel 方法说明
返回值: void
参数:
解释:设置自适应label宽度,即label的宽度随文本变化而变换。
返回值: void
参数:
解释:取消设置自适应label宽度
void applyStyle(const string& sStyleName);
返回值: void
参数:
类型 | 参数名 | 说明 |
const string& | sStyleName | label的样式名称 |
解释:label的样式风格
void applyStyle(const CALabelStyle* pLabelStyle);
返回值: void
参数:
类型 | 参数名 | 说明 |
const CALabelStyle* | pLabelStyle | label的应用风格 |
解释:label的应用风格
static CALabel* createWithFrame(const DRect& rect);
返回值: static CALabel*
参数:
类型 | 参数名 | 说明 |
const DRect& | rect | 区域大小 |
解释:创建,并指定其Frame,默认Frame为(0,0,0,0)
static CALabel* createWithCenter(const DRect& rect);
返回值: static CALabel*
参数:
类型 | 参数名 | 说明 |
const DRect& | rect | 中心点的位置及大小 |
解释:创建,并指定其Frame,默认Center为(0,0,0,0)
virtual bool initWithFrame(const DRect& rect);
返回值: virtual bool
参数:
类型 | 参数名 | 说明 |
const DRect& | rect | 区域大小 |
解释:初始化,并指定其Frame
virtual bool initWithCenter(const DRect& rect);
返回值:virtual bool
参数:
类型 | 参数名 | 说明 |
const DRect& | rect | 中心点的位置及大小 |
解释:初始化,并指定其Center
void setColor(const CAColor4B& var);
返回值: void
参数:
类型 | 参数名 | 说明 |
const CAColor4B& | var | CAColor4B的类型颜色 |
解释:设置label的颜色
返回值: const CAColor4B&
参数:
解释:获取label的颜色