iOS到Mac OS之自定义Label
来源:互联网 发布:中国象棋算法 编辑:程序博客网 时间:2024/06/10 11:08
Mac OS中没有像iOS一样的UILabel。
一般我们可以用cell去显示一段文字,或者用textfield,或者直接draw。几种方式都是可行的。
这里提供了一个自定义的label。
里面用到了CATextlayer这个类去做的;CATextlayer的属性和方法可以通过API去查看;
使用CATextLayer需要,#import <QuartzCore/QuartzCore.h>
这个东西可以在iOS中使用,也可以在Mac OS中使用,还是很方便的。
CATextLayer *layer = [CATextLayer layer]; //初始化layer.string = @"dasfasa"; //设置文字layer.frame = CGRectMake(0, 0, 320, 20);//设置framelayer.font = (__bridge CFTypeRef)((NSString *)fontName);//设置字体layer.fontSize = 10.0f; //设置字体大小layer.alignmentMode = kCAAlignmentCenter; //字体的对齐方式layer.foregroundColor =[NSColor redColor].CGColor; //字体的颜色layer.wrapped = YES;//设置文字是不是只限制在frame中layer.contentsScale = 2.0;//2不模糊[someview.layer addSublayer:lary];CATextLayer的优势在于,它的string属性是id类型的,可以直接赋NSAttributedString类型的值。
有一点需要注意的是:::Mac OS中使用CATextLayer时,需要先设置someview.wantsLayer = YES;否则加载不出来。
NSAttributedString,利用这个类,我们可以让一个label呈现出不同颜色的文字,还可以设置行间距,字间距等。
下面列举简单的用法,其他大同小异。
_attributeString = [[NSMutableAttributedString alloc] initWithString:_text];//文字颜色[_attributeString addAttribute:(NSString *)kCTForegroundColorAttributeName value:(id)[NSColor redColor].CGColor range:NSMakeRange(0, _text.length-1)];//字体-字体大小[_attributeString addAttribute:(NSString *)kCTFontAttributeName value:[NSFont systemFontOfSize:10.0f] range:NSMakeRange(0, _text.length-1)];这里奉上一个简单的LabelDemo:点击下载LabelDemo
1 0
- iOS到Mac OS之自定义Label
- iOS到Mac OS之NSTableView的简单使用
- 自定义控件之:label
- Mac OS使用技巧之十四:自定义文件图标
- 【iOS开发】---- RTLabel 自定义label
- iOS开发之label
- iOS 控件之Label
- 01.IOS学习笔记之MAC OS X 简介
- 多线程编程指南之线程管理(iOS,Mac os )
- mac OS开发Label控件使用及显示
- IOS与Mac OS X
- Learn Mac os/iOS program
- ios之Label的创建
- ios之Label的创办
- iOS巅峰之label描边
- [Mac] Mac OS/iOS/XCode版本历史
- Mac OS 下编译OpenCV for iOS ,android ,mac os
- 专家称Mac OS X、iOS融合 2-3年内还难看到
- FIS数字金矿全面讲解--新手必看
- 尴尬,AS导入网络下载的demo不会打开运行+++Plugin with id 'com.android.application' not found错误解决
- eclipse 如何把java项目转成web项目
- TokenBucket(令牌桶算法) LeakBucket(漏桶算法) 两种限流算法
- Spring @Scheduled
- iOS到Mac OS之自定义Label
- butterknife注解框架更新
- C#编程基础 实验(7) (3)
- iOS MJRefresh 刷新
- 解决jar包冲突通用方法汇总
- JVM运行时数据区域分析
- log4j配置
- 详解Git的使用以及如何使用AndroidStudio上传工程到GitHub
- 骁龙820处理器,眩晕感极低,重300g佩戴无压迫感,Pico NeoVR一体机,顶配售价3399元