澳门威利斯人_威利斯人娱乐「手机版」

来自 办公软件 2020-04-01 23:39 的文章
当前位置: 澳门威利斯人 > 办公软件 > 正文

官方文档

CATextLayer*titleLayer = [CATextLayerlayer];

titleLayer.frame= rect;

titleLayer.alignmentMode=kCAAlignmentCenter;

titleLayer.truncationMode=kCATruncationEnd;

titleLayer.font=nil;//独一增多的代码,同时也是该难点的最快杀绝方法!!!

titleLayer.string= [selfattributedTitleAtIndex:idx];

titleLayer.contentsScale= [[UIScreenmainScreen]scale];

1、找到(NSAttributedString*)attributedTitleAtIndex:(NSUInteger)index方法,找到dict[NSForegroundColorAttributeName]

titleColor.CGColor,把.CGColor去掉,因为UILabel的富文本不协理CGColor。

2、- drawRect:rect:把317行(1.5.2/1.5.3中)CATextLayer用UILabel替换掉,替换的代码如下:

UILabel titleLayer = [[UILabel alloc]initWithFrame:rect];*

titleLayer.textAlignment = NSTextAlignmentCenter;

titleLayer.attributedText = [selfattributedTitleAtIndex:idx];

[self.scrollView addSubview:titleLayer];

// truncated using the line break mode.

小编:笑楔信 来自简书

实际改进议程:

label.font = [UIFont systemFontOfSize:20]; //⼀日常方法

在Xcode8.1 的 Documentation and API Reference中,小编意识CATextLayer的font属性有句话:

笔者:笑楔信 来自简书

@end

图片 1HMSegmentControl极度展现

多年来IOS10调升了,XCode中iphone7模拟器可用了,运维的时候开采HMSegmentControl分段控件小于2个字的分支汉语字都没了。通过debug感觉原本的CATextLayer只怕有一些难点了,于是自个儿的校正思路稳固在用UILabel替换CATextLayer.

label.font = [UIFont fontWithName:@"DBLCDTempBlack" size:25]; //钦赐字体和分寸

后记解释:IOS10中,假如CATextLayer的font属性在string赋值为富文本之后真的不起成效,这为什么font不置空会影响string值的例行突显,那很有希望是苹果集团IOS的bug,小编早就发了举报

自己在后天作品中牵线了最新开掘的解决方案,只须求增多一句话就能够缓慢解决此bug

// Support for constraint-based layout (auto layout)

按理来讲,小编设了CATextLayer的string为NSAttributedString,那么font是二个失效参数。但是,当自个儿在修正HMSegmentControl文字相当(即:文字小于八个字符时不呈现的不胜卡塔尔国时开采,作者在HMSegmentControl.m(版本1.5.2、版本1.5.3卡塔尔中- drawRect方法的317行,作者增多了titleLayer.font=nil,如下:

 NS_CLASS_AVAILABLE_IOS(2_0)

修正后,文字万分未有。

容长度,后半有个别被删除。

抵补:经提示开采大家对十分现象大概不通晓,笔者那边给出那个bug的图,在下图中,分段控件的前多少个分支汉语字都是五个字符,而服务申请为多个字符,全体字符给的都以NSAttributedString的种类,但在Iphone7的IOS10下只突显了劳务申请(经测必得高于七个字符才展现State of Qatar的文字,其余八个分支都未展现文字。

NSLineBreakByCharWrapping;以字符为展现单位出示,尾部简易不展现。

The font property is only used when the string property is not an NSAttributedString.

唯有当string属性不是多少个NSAttributedString对象时font属性才被用到

@property(nonatomic,retain)              UIColor *highlightedTextColor; // default is nil

@property(nonatomic)        NSLineBreakMode    lineBreakMode;  // default is NSLineBreakByTruncatingTail. used for single and multiple lines of text

设置此属性---text是还是不是处于高亮

@property(nonatomic) CGFloat minimumFontSize NS_DEPRECATED_IOS(2_0, 6_0); // NOTE: deprecated - use minimumScaleFactor. default is 0.0

// the underlying attributed string drawn by the label, if set, the label ignores the properties above.

@property(nonatomic) NSInteger numberOfLines;

早已弃用

@property(nonatomic)   NSTextAlignment    textAlignment;  // default is NSTextAlignmentLeft

//attributedText:设置富文本。

设置此属性---text最多展现行数,假诺为0则表示多行

NSLineBreakByTruncatingHead;前边部分文字

// override points. can adjust rect before calling super.

NSMutableAttributedString *textLabelStr =[[NSMutableAttributedString alloc]initWithString:text];

// this determines the number of lines to draw and what to do when sizeToFit is called. default value is 1 (single line). A value of 0 means no limit

@property(nonatomic)        CGSize     shadowOffset;    // default is CGSizeMake(0, -1) -- a top shadow

//达到此属性设置的宽窄就换行

未发掘安装后的实效

设置此属性---text高亮状态的书体颜色

label.font = [UIFont boldSystemFontOfSize:20]; //加粗方法

本文由澳门威利斯人发布于办公软件,转载请注明出处:官方文档

关键词: 澳门威利斯人 异常 最快 文字 解决方案