美文网首页
[iOS日常]给标题前面加角标

[iOS日常]给标题前面加角标

作者: aitality | 来源:发表于2020-12-31 08:53 被阅读0次

在iOS中一段文本部分文本高亮显示非难事,就是利用NSMutableAttributedString这个类完成的,可以改变高亮部分的颜色和字号。但是也经常会遇到给文本加角标,即就是高亮部分的背景色为圆角,这个就有难度了,现有的api是不支持的,那该怎么办呢?

方案一、通过增加空字符预留出位置,再在对应的位置增加角标

可以增加\u3000代表空字符,然后利用文本计算出对应的位置即可。
但是对于UILabel,默认会去除空格和换行等空白字符,具体字符如:UILabel取消自动Trim空格和换行等空白字符

方案二、对于行首的角标可利用首行缩进预留位置

具体代码如下:

NSMutableParagraphStyle *paraStyle = [[NSMutableParagraphStyle alloc] init];
paraStyle.alignment = NSTextAlignmentLeft;  //对齐
paraStyle.headIndent = 0.0f;//行首缩进
//参数:(字体大小17号字乘以2,34f即首行空出两个字符)
CGFloat emptylen = label.font.pointSize * 1;
paraStyle.firstLineHeadIndent = emptylen;//首行缩进
paraStyle.tailIndent = 0.0f;//行尾缩进
paraStyle.lineSpacing = 2.0f;//行间距

NSAttributedString *attrText = [[NSAttributedString alloc] initWithString:string attributes:@{NSParagraphStyleAttributeName:paraStyle}];

相关文章

  • [iOS日常]给标题前面加角标

    在iOS中一段文本部分文本高亮显示非难事,就是利用NSMutableAttributedString这个类完成的,...

  • 简书写文章学习总结(使用教程)

    1. 插入标题   要用到的符号为 # ,一级标题前面加 # ,二级标题前面加 ## ,以此类推,最多可以到六级标...

  • 安卓应用角标那些事儿

    什么是应用角标? 应用角标最开始是在ios系统中出现的,大概长这样: 如何支持应用角标? 安卓应用的角标是由Lau...

  • IOS 应用程序角标 应用程序内部角标[转]

    IOS 应用程序角标 应用程序内部角标 发表于2014/4/17 20:31:13 3913人阅读 分类: IOS...

  • Markdown 常用简明语法

    标题 标题前面加“#”,“##”…… 标题下面加人一个“-”,“=” 列表 列表项前面加“-”,“+”,“*”注意...

  • iOS 卸载后重装APP角标依旧存在的问题

    iOS 卸载后重装APP角标依旧存在的问题 每个 APP 的角标都是存在 iOS 手机系统里的,我们开发人员是无法...

  • Markdown基本语法练习

    一、标题 在想要设置为标题的文字前面加#来表示一个#是一级标题,二个#是二级标题,以此类推。支持六级标题。 注:标...

  • Markdown

    一、标题 在想要设置为标题的文字前面加#来表示一个#是一级标题,二个#是二级标题,以此类推。支持六级标题。 注:标...

  • markdown语法整理

    一、标题 在想要设置为标题的文字前面加#来表示一个#是一级标题,二个#是二级标题,以此类推。支持六级标题。 注:标...

  • 简书markdown语法

    一、标题 在想要设置为标题的文字前面加#来表示一个#是一级标题,二个#是二级标题,以此类推。支持六级标题。 注:标...

网友评论

      本文标题:[iOS日常]给标题前面加角标

      本文链接:https://www.haomeiwen.com/subject/eicloktx.html