|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
语法弄明白@interface@property这些工具总要知道是干嘛的怎么用基础库在开辟阿里数据iOS版客户真个时分,因为项目进度很紧,项目里的一切图标都是用最寻常的背景图片计划来完成。而为了要兼容一般屏与Retina屏的设备,苹果请求每一个背景图都要以两种尺寸存(a.png和a@2x.png),这让计划师们增添了本钱,由于他们每次都得出两份背景图标。
如今在web开辟上,iconfont手艺的使用很普遍,它不但在办理多分辩率显现成绩上很有效果,并且在利用它的时分还能下降很多计划和开辟本钱。
那末它能不克不及使用到ios开辟下去呢?带着这个疑问,我在github上找到了FontasticIcons和ios-fontawesome,可是这两个OC包对icon资本封装都无限,并且扩大也不是很便利。
既然能在ios上利用iconfont,那末怎样用呢?经由一番探索,发明利用道理和自界说字体差未几,只要一般操纵不太一样,接上去我给人人具体先容一下。
怎样利用自界说字体
在讲iconfont之前,起首先来看看一般自界说字体是怎样在ios中利用的,两个道理是一样的。这里以KaushanScript-Regular为例:
Step1:导进字体文件
将字体文件拖进项目(ios撑持的字体魄式有:.ttf、.otf,其他格局不断定):
<br>
然后再在项目标资本池中确认字体文件是不是到场项目,翻开xcode项目标BuildPhases中检察:
<br>
Step2:设置.plist文件
在.plist文件中注册新到场的字体,.plist文件常常以“[appname]-Info.plist”的情势存在于“SupportingFiles”文件夹内。在.plist文件中增加新属性“Fontsprovidedbyapplication”,该属性的值是一个数组,这意味着能够在这里注册多个字体。
<br>
Step3:找到字体集称号
注册完,我们必要检测是不是注册乐成且获得新字体称号,检测办法就是把一切安装了的字体都打印出来,看看新注册的字体是不是在内里:- for(NSString*familyin[UIFontfamilyNames]){NSLog(@"%@",family);for(NSString*namein[UIFontfontNamesForFamilyName:family]){NSLog(@"%@",name);}}
复制代码 运转完,检察把持台里打印出的一切字体会合是不是有新注册的字体,假如有,申明注册乐成,并将字体名(在这里是“KaushanScript”)记着留到前面用。
<br>
Step4:利用新字体
最初,就是利用你最新到场的字体啦:- UILabel*label=[[UILabelalloc]initWithFrame:CGRectMake(10,60,300,50)];label.font=[UIFontfontWithName:@"KaushanScript"size:35];label.text=@"iconfont";label.textColor=UIColorFromRGB(0xFF7300);[self.viewaddSubview:label];
复制代码 效果:
<br>
入手下手利用iconfont
图标字体也是字体,利用体例和下面所说的差未几,只是在套用上有些不同;这里拿fontello的图标字体库为例。
1.选择必要的图标
在fontello的图标字体库选择本人必要的图标,并下载天生的字体文件。
2.依照下面的步骤将图标字体注册到项目中
3.找到图标对应的unicode码
利用FontLabStudio5工具翻开字体文件(好比fontello.ttf),就能够看到图标与unicode码之间的对应干系啦。
<br>
4.利用图标
- UILabel*label=[[UILabelalloc]initWithFrame:CGRectMake(10,60,300,50)];label.font=[UIFontfontWithName:@"fontello"size:35];label.text=@"U0000E802U0000E801U0000E803U0000E804U0000E805U0000E81A";label.textColor=UIColorFromRGB(0xFF7300);[self.viewaddSubview:label];
复制代码 在Objective-C中,自界说的unicode码必要以“U0000E802”如许的格局存在。
掌握上面的内容差不多就能写个APP了最好的学习方法就是边写边学自己构想一个小的APP在做的时候遇到问题去找找资料我觉得这样学习比较快也比较扎实下面这些库都是有专门功能的库 |
|