1
我該如何製作加粗(強)NSString
的前3個符號?比如我有串@"Hello"
,但我需要:赫爾 LONSString中的粗體符號
我有這個字符串:
NSString *testString = @"Hello";
我該如何製作加粗(強)NSString
的前3個符號?比如我有串@"Hello"
,但我需要:赫爾 LONSString中的粗體符號
我有這個字符串:
NSString *testString = @"Hello";
NSString *testString = @"Hello";
//Checking string length
if (testString.length >= 3)
{
NSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:testString];
//Bold font range
NSRange boldFontRange = NSMakeRange(0, 3);
[attrString addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:13.0] range:boldFontRange];
//Setting Normal Font
NSRange normalFontRange = NSMakeRange(3, testString.length - 3);
[attrString addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:13.0] range:normalFontRange];
//Setting attributed Text to Label
[self.lblTitle setAttributedText:attrString];
}
你會使用這個方法,在裏面添加你的原始字符串的一部分要在其中更改其字體的字符串。
這是格式化當前字符串的全局解決方案。
語法調用方法
[self getAttributedStringWithFullString:@"Hello" forRangeOfString:@"Hel" withRangeOfStringFont:[UIFont boldSystemFontOfSize:12.0f]];
-(NSAttributedString*)getAttributedStringWithFullString:(NSString*)fullString
forRangeOfString:(NSString*)rangeOfString
withRangeOfStringFont:(UIFont*)rangeOfStringFont
{
NSMutableAttributedString* att_string = [[NSMutableAttributedString alloc]initWithString:fullString];
NSRange atRange = [att_string.string rangeOfString:rangeOfString];
if (atRange.location != NSNotFound)
{
[att_string addAttribute:NSFontAttributeName value:rangeOfStringFont range:atRange];
}
return att_string;
}
試試這個http://stackoverflow.com/a/6013751/6619234 – seggy
使用'NSAttributeString' – Shreyank
的可能的複製[任何方式到的NSString的加粗部分?] (http://stackoverflow.com/questions/6013705/any-way-to-bold-part-of-a-nsstring) – EridB