iOS学习1--UILabel属性简介
//设置标签文本
@property(nullable,nonatomic,copy)NSString*text;
//文本字体大小和文本字体
@property(null_resettable,nonatomic,strong)UIFont*font;
//文本颜色
@property(null_resettable,nonatomic,strong)UIColor*textColor;
//文本阴影颜色
@property(nullable,nonatomic,strong)UIColor*shadowColor;
//阴影大小例如CGSizeMake(1.0,1.0)默认是一个向上的阴影(0,-1)
@property(nonatomic)CGSizeshadowOffset;
//设置文本对齐方式
{
默认是左对齐
NSTextAlignmentLeft=0左对齐
NSTextAlignmentCenter=1居中
NSTextAlignmentRight=2右对齐
NSTextAlignmentJustified=3左右两边都对齐一个段落的最后一行是natural-aligned
NSTextAlignmentNatural=4显示脚本的默认对齐方式
}
@property(nonatomic)NSTextAlignmenttextAlignment;
//超出label边界文字的截取方式
{
NSLineBreakByWordWrapping =0,//按着一个单词来显示不会被剪辑剩余的不会被显示
NSLineBreakByCharWrapping,//按着一个字体来显示不会被剪辑剩余的不会被显示
NSLineBreakByClipping,//把能显示的全显示完剩下的直接不显示可能有的字显示一半就被剪辑
NSLineBreakByTruncatingHead,//在那一行显示不全的话那一行就以...abcd模式来显示
NSLineBreakByTruncatingTail,//在那一行显示不全的话那一行就以abcd...模式来显示
NSLineBreakByTruncatingMiddle//在那一行显示不全的话那一行就以ab...cd模式来显示多行时作用于最后一行
}
@property(nonatomic)NSLineBreakModelineBreakMode;
//更改任意文字颜色,大小
@property(nullable,nonatomic,copy)NSAttributedString*attributedText;
//文本高亮时的颜色
@property(nullable,nonatomic,strong)UIColor*highlightedTextColor;
//文本高亮
@property(nonatomic,getter=isHighlighted)BOOLhighlighted;
//是否能与用户交互
@property(nonatomic,getter=isUserInteractionEnabled)BOOLuserInteractionEnabled;
//文本是否可变
@property(nonatomic,getter=isEnabled)BOOLenabled;
//文本最多行数,为0时没有最大行数限制
@property(nonatomic)NSIntegernumberOfLines;
//文本文字自适应大小
@property(nonatomic)BOOLadjustsFontSizeToFitWidth;
//这个值控制文本的基线位置,只有文本行数为1时有效
{
UIBaselineAdjustmentAlignBaselines =0,//默认值文本最上端于label中线对齐
UIBaselineAdjustmentAlignCenters,//文本中线于label中线对齐
UIBaselineAdjustmentNone,//文本最低端与label中线对齐
}
@property(nonatomic)UIBaselineAdjustmentbaselineAdjustment;
//设置最小收缩比例,如果Label宽度小于文字长度时,文字进行收缩,收缩超过比例后,停止收缩(例如0.5)
@property(nonatomic)CGFloatminimumScaleFactor;
//是否允许在没有收缩再提前让字距变紧,默认NO
@property(nonatomic)BOOLallowsDefaultTighteningForTruncation ;
// 用来改变label里面文字展示窗口的大小,你可以自己根据文字的多少,来计算窗口的大小
- (CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOfLines:(NSInteger)numberOfLines;
//绘制text到指定区域
//需要重载此方法,然后由子类调用,重写时调用super可以按默认图形属性绘制,若自己完全重写绘制函数,就不用调用super了
- (void)drawTextInRect:(CGRect)rect;
//这个属性是用来设置多行label的最大宽度的
//当自动布局的时候约束这个label的时候这个属性会起作用
//在自动布局添加约束中,若文本超过了指定的最大宽度的时候文本会另起一行从而增加了label的高度
@property(nonatomic)CGFloatpreferredMaxLayoutWidth;
//默认是0若是0则当前字体大小被识别为最小的字体
//用这个属性来指定最小的乘数这个乘数是当前的字体来计算出可以一个可以接受的字体来展示label
//若是1的话表明这个字体不可以被放大和缩小了
@property(nonatomic)CGFloatminimumFontSize;
//改变字幕之间的间距来适应Label大小
@property(nonatomic)BOOLadjustsLetterSpacingToFitWidth;