属性字符串的一些使用

1.了解NSAttributedString类

NSDictionary *attributes = @{NSForegroundColorAttributeName: [UIColor redColor],NSFontAttributeName:[UIFont fontWithName:@"Zapfino" size:16.0]};

NSString *strDisplayText = @"this is an attributed string .";

NSAttributedString *attributedText = [[NSAttributedString alloc] initWithString:strDisplayTextattributes:attributes];

self.lblInfo.attributedText = attributedText;

2.设置字间距和字体背景色

NSDictionary *attributes1 = @{NSBackgroundColorAttributeName: [UIColor orangeColor],//只有在有字的的部分有橘黄色的背景

NSFontAttributeName:[UIFont fontWithName:@"Zapfino" size:22.0],

NSKernAttributeName:@-3.0};//指定了每个字母之间的距离(数值越小字间的距离也越紧密)

NSString *strDisplayText1 = @"this is an attrubuted string.";

NSAttributedString *attrubutedText1 = [[NSAttributedString alloc] initWithString:strDisplayText1attributes:attributes1];

self.lblInfo1.attributedText = attrubutedText1;

3.设置阴影和下划线效果

NSShadow *shadow = [[NSShadow alloc] init];

shadow.shadowColor = [UIColor greenColor];

shadow.shadowBlurRadius = 5.0;

shadow.shadowOffset = CGSizeMake(1.0, 1.0);

NSDictionary *attributes2 [email protected]{NSUnderlineStyleAttributeName: @1,

NSShadowAttributeName: shadow};

NSString *strDisplayText2 = @"Shadow Font";

NSAttributedString *attributedText2 = [[NSAttributedString alloc] initWithString:strDisplayText2attributes:attributes2];

self.lblInfo2.attributedText = attributedText2;

4.为字符串不同部分设置不同效果

NSDictionary *subStrAttribute1 = @{NSForegroundColorAttributeName: [UIColor redColor],

NSStrikethroughStyleAttributeName: @2};

NSDictionary *subStrAttribute2 = @{NSForegroundColorAttributeName: [UIColor greenColor]};

NSString *strDisplayText3 = @"red and green ";

NSMutableAttributedString *attributedText3 = [[NSMutableAttributedString alloc]initWithString:strDisplayText3];

[attributedText3 setAttributes:subStrAttribute1 range:NSMakeRange(0, 3)];

[attributedText3 setAttributes:subStrAttribute2 range:NSMakeRange(8, 5)];

self.lblInfo3.attributedText = attributedText3;

5.设置段落效果

NSMutableParagraphStyle *paragraph = [[NSMutableParagraphStyle alloc] init];

paragraph.alignment = NSTextAlignmentJustified;//分散式对齐

paragraph.firstLineHeadIndent = 16.0;//每一个段的文字向右缩进16个点

paragraph.paragraphSpacingBefore = 20;//设置段与段之间的距离为20个点

paragraph.lineSpacing = 5;//设置行与行之间的距离

paragraph.hyphenationFactor = 1.0;//设置每行的最后单词是否截断,在0.0-1.0之间,默认为0.0,越接近1.0单词被截断的可能性越大,

NSDictionary *attributes4 = @{NSForegroundColorAttributeName: [UIColor redColor],

NSParagraphStyleAttributeName:paragraph};

NSString *subDisplayText4 = @"ipad inspires creativity and hands-on learning with features you won‘t find in any other educationla tool - on a device that students really want to use.\nPowerful apps from the app store like itunes u and ibooks let students engage with content in interactive ways,fin  information in an instant, and access an entire library wherever they go.";

//    NSAttributedString *attributedText4 = [[NSAttributedString alloc] initWithString:subDisplayText4];

NSAttributedString *attributedText4 = [[NSAttributedString alloc] initWithString:subDisplayText4attributes:attributes4];

self.lblInfo4.attributedText = attributedText4;

以下的截图就是对于的效果:


好用的字体网址:http://www.ios6-fonts.com/

时间: 2024-10-25 07:31:39

属性字符串的一些使用的相关文章

(一一一)图文混排基础 -利用正则分割和拼接属性字符串

很多时候需要用到图文混排,例如聊天气泡中的表情,空间.微博中的表情,例如下图: 红心和文字在一起. 比较复杂的情况是表情夹杂在文字之间. 要实现这种功能,首先要介绍iOS中用于显示属性文字的类. 用于文字显示的类除了text属性之外,还有attributedText属性,这个属性是NSAttributedString类型,通过这个属性可以实现不同文字的不同字体.颜色甚至把图片作为文字显示的功能. 下面介绍这个字符串的使用. 以一条微博内容为应用场景,介绍如何从中找出表情.话题等内容,其中表情替换

有两个地方,用到了javabean对象和属性字符串值之间的转换

1.有两个地方,用到了javabean对象和属性字符串值之间的转换 2.一个是接入层spring mvc,将json字符串参数转换为javaBean.通过@RequestBody javaBean方式 3.另一个是,mybatis中javeBean对象与数据库字段值之间的转换. 在sql语句的insert/update/delete语句传入javaBean对象,用#{}转换为具体的属性 在sql语句的select中,将数据库中的字段转换为javaBean的属性值. 4.只要发生javaBean的

html语言解析为属性字符串NSMutableAttributedString

NSString *htmlString=[NSString stringWithFormat:@"<html><body>%@</body></html>",html语言字段]; NSMutableAttributedString * attrStr = [[NSMutableAttributedString alloc] initWithData:[htmlString dataUsingEncoding:NSUnicodeStrin

属性字符串的replaceCharactersInRange方法

一,实验: 1> 让 range 的 length 参数为0,以下代码输出属性字符串的结果为12354 1 NSMutableAttributedString *attrStr = [[NSMutableAttributedString alloc]initWithString:@"1234"]; 2 NSRange range = NSMakeRange(3, 0); 3 [attrStr replaceCharactersInRange:range withString:@&

属性字符串(NSAttributedString)的简单应用

属性字符串NSAttributedString 可以对字符串附加格式信息,由于对于对不同文本片段使用不同的格式,属性字符串类特别合适. IOS 6中对样式文本有了大改善,大部分主要的UIKit控件都允许使用属性字符串.举例UILable,只要创建一个属性字符串,然后赋值给标签的attributedText属性即可. - (IBAction)buttonPressed:(UIButton *)sender { //按钮标题 NSString *title = [sender titleForSta

ios开发之属性字符串NSAttributeString与NSString相互转换包含图片

分享几个常用的 属性字符串NSAtrributeString 和 NSString 普通字符串的 转换方法: 一:把普通的字符串,替换为包含图片的属性字符串 plist 文件,图片 格式见下图: +(NSMutableAttributedString *)stringToAttributeString:(NSString *)text { //先把普通的字符串text转化生成Attributed类型的字符串 NSMutableAttributedString * attStr = [[NSMut

属性字符串

* API: Character Attributes , NSAttributedString 共有21个属性* * 1. NSFontAttributeName ->设置字体属性,默认值:字体:Helvetica(Neue) 字号:12 * 2. NSParagraphStyleAttributeName ->设置文本段落排版格式,取值为 NSParagraphStyle 对象(详情见下面的API说明) * 3. NSForegroundColorAttributeName ->设置

html5 请求的URL转成 OC可用属性字符串显示

NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:helpUrlStr]]; NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; NSAttributedString *attributedString = [[NSAttributedString alloc] initWithData:[st

在标签的事件属性字符串中编写程序,检查用户输入的密码明文

<body> <form action="" id="form1" name="form1" method="post"> <label>姓名: <input type="text" name="textfield" /> </label> <p> <label>密码: <input type=&q