首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用NSAttributedString在Swift中为大字体的文本加下划线?

在Swift中使用NSAttributedString为大字体的文本加下划线,可以按照以下步骤进行:

  1. 导入UIKit框架:在代码文件的顶部添加import UIKit
  2. 创建一个NSMutableAttributedString对象:使用NSMutableAttributedString(string: "Your Text")来创建一个可变的富文本字符串对象。
  3. 设置大字体属性:使用[NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 20)]来设置大字体的属性,其中20是字体大小,可以根据需要进行调整。
  4. 设置下划线属性:使用[NSAttributedString.Key.underlineStyle: NSUnderlineStyle.single.rawValue]来设置下划线的属性,这里使用单下划线,也可以选择其他下划线样式。
  5. 将属性应用于文本:使用addAttributes(_:range:)方法将上述设置的属性应用于文本的范围内,范围可以是整个文本或者指定的部分文本。

以下是一个完整的示例代码:

代码语言:txt
复制
import UIKit

let text = "Your Text"
let attributedString = NSMutableAttributedString(string: text)

let attributes: [NSAttributedString.Key: Any] = [
    .font: UIFont.boldSystemFont(ofSize: 20),
    .underlineStyle: NSUnderlineStyle.single.rawValue
]

attributedString.addAttributes(attributes, range: NSRange(location: 0, length: text.count))

// 使用attributedString进行后续操作,比如将其赋值给UILabel的attributedText属性

这样,你就可以使用NSAttributedString在Swift中为大字体的文本加下划线了。

推荐的腾讯云相关产品:腾讯云移动直播(https://cloud.tencent.com/product/mlvb)可以用于音视频直播场景,腾讯云云服务器(https://cloud.tencent.com/product/cvm)可以用于服务器运维和云原生应用部署。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

AttributedString——不仅仅让文字更漂亮

AttributedString——不仅仅让文字更漂亮 WWDC 2021上,苹果开发者带来了有一个期待已久功能——AttributedString,这意味着Swift开发人员不再需要使用基于Objective-C...需要使用Swift点或键语法按名称访问属性,不仅可以保证类型安全,而且可以获得编译时检查优势。...自定义属性 使用自定义属性,不仅有利于开发者创建更符合自身要求属性字符串,而且通过Markdown文本添加自定义属性信息,进一步降低信息和代码耦合度,提高灵活度。...}} Markdown中使用^[text](属性名称:属性值)来标记自定义属性 调用 // Markdown文本解析自定义属性时,需指明Scope。...2021新Formatter API[2]一文,还有Formatter中使用自定义属性案例 总结 AttributedString之前,多数开发者将属性字符串主要用于文本显示样式描述,随着可以

3.9K40
  • Swift 小仿微博列表

    前言     鉴于目前SwiftABI(应用程序二进制接口)、API(应用程序编程接口) 基本稳定,对于Swift学习有必要提上日程了,这个Swift仿微博列表效果是我最近一边学习《Swift入门到精通...图集浏览效果 一、UITextView富文本实现 标题文本显示样式我是参考微博:@用户昵称、#话题#、图标+描述、[表情]、全文:限制显示字数,点击链接跳转或查看图片 比如第一条数据标题原始字符串...——> 正则匹配后富文本显示:@wsl2ls: 不要迷恋哥,哥只是一个传说 查看图片, 是终将要成为#海贼王#男人!// @蜜桃君?: ?...NSRange,进而导致另一个匹配项Range处理字符串时出现越界崩溃问题!...三、界面流畅度优化 网上关于界面流畅度优化好文章还是挺多,我在这里只记录下本文示例中用到部分优化策略,基本上FPS60左右, 详情可以看代码: 1、cell高度异步计算和缓存 2、富文本异步正则匹配和结果缓存

    1.4K30

    Swift 3.0 探索之 UILabel

    开篇 最近闲来无事,看看Swift3.0,发现和我认识1.0有很大不同了,如果不学习一下估计会落伍了,所以探究一下 Swift 开发使用(当然目前是初级水平,一起进步嘛,也欢迎菜鸟,大神一起探讨...QQ群 139852091) 正题 UILabel是我们开发中常用控件了,我今天就拿它开刀,看一下我们开发中常用UILabel属性 创建已经常规设置 //let 变量名字 = 变量类型...属性true时候 上面设置lineBreakMode属性将失效 myLabel.adjustsFontSizeToFitWidth = true //当文字超出标签宽度时,自动调整文字大小...�图1 NSAttributedString文本 我们还经常使用 Label 一个属性是NSAttributedString 我们看一下这个Swift里面怎么使用 ****当设置NSAttributedString...属性时候,设置text将失效,其textColor、font等属性将保留没有被改变(OC Swift通用属性)**** //富文本设置 let attributeString

    80930

    SwiftUI 视图中打开 URL 若干方法

    访问我博客 www.fatbobman.com[1] 可以获得更好阅读体验 本文将介绍 SwiftUI 视图中打开 URL 若干种方式,其他内容还包括如何自动识别文本内容并为其转换为可点击链接...本文范例代码是 Swift Playgrounds 4.1 ( macOS 版本 )完成,可在 此处下载[2]。...请注意,下面的代码使用是参数类型 String 构造器,因此 Text 将无法自动识别内容 URL : let text = "www.wikipedia.org 13900000000 feedback...通过 AttributedString 不同位置文字设置不同属性,从而实现在 Text 打开 URL 功能。...遗憾是,即使我们已经 AttributedString 设置了前景色,但当某段文字 link 属性非 nil 时,Text 将自动忽略它前景色和下划线设定,使用系统默认 link 渲染设定来显示

    7.8K31

    iOS 之-富文本 (NSAttributedString)

    关于富文本能做什么我就不多说了,我们一般遇到图文混排等,这个还是很好做到。...好,开讲了: 讲之前,我们得先明白他属性和一些方法 1.属性: NSFontAttributeName 设置字体属性,默认值:字体:Helvetica(Neue...对象(整数),0 表示没有连体字符,1 表示使用默认连体字符 NSKernAttributeName 设定字符间距,取值 NSNumber 对象(整数),正值间距加宽...NSUnderlineStyle值,与删除线类似 NSUnderlineColorAttributeName 设置下划线颜色,取值 UIColor 对象,默认值黑色...设置文本段落排版格式,取值 NSParagraphStyle 对象 其中常用: NSFontAttributeName 字体 NSParagraphStyleAttributeName

    3K60

    UI篇-CATextLayer和 富文本交融

    [self.view.layer addSublayer:lary]; /* @property CGFloat contentsScale; 使用CATextLayer设置文本,可能会产生模糊状态,...使用通过将AttributedString赋值给控件 attributedText 属性来添加文字样式。有属性控件有UILabel、UITextField和UITextView。...,取值 NSString 对象,目前只有图版印刷效果可用: //NSAttachmentAttributeName NSTextAttachment 设置文本附件,常用插入图片 //NSLinkAttributeName...,我想你一定用不到它 - - //NSVerticalGlyphFormAttributeName 水平或者竖直文本 1竖直 0水平 iOS没卵用,不支持竖版 2.设置段落样式:段落样式中允许你设置文字与文字之间行间距...、字符间距、以及对齐模式,但是注意是,设置段落样式时候,必须保证控件 numberofline属性必须0 NSMutableAttributedString* str2 = [[NSMutableAttributedString

    2.5K10

    Swift Phantom(幻象)类型

    本周,让我们来看看一种技术,它可以让我们利用 Swift 类型系统在编译时执行更多种类数据验证——消除更多潜在歧义来源,并帮助我们整个代码库中保持类型安全——通过使用幻象类型(phantom types...然而,虽然这对文本和HTML文档很有效,但由于PDF文档我们应用程序是不可编辑——当遇到PDF时,我们将被迫抛出一个错误,触发一个断言,或以其他方式失败: func openEditor(for...由于我们现在使用一个协议来表示所有的文档格式,我们将需要为我们三种文档类型每一种编写完全重复模型实现,以及我们将来可能增加任何其他格式提供支持。...如果我们再深入一点,就会发现 Swift 标准库将我们上面提到UTF8类型定义另一个类似命名空间枚举一个无大小写枚举,称为Unicode。...一个标准模式 起初,幻象类型 Swift 可能看起来有点 "格格不入"。

    89220

    Swift 幻象类型

    本周,让我们来看看一种技术,它可以让我们利用 Swift 类型系统在编译时执行更多种类数据验证——消除更多潜在歧义来源,并帮助我们整个代码库中保持类型安全——通过使用幻象类型(phantom types...然而,虽然这对文本和HTML文档很有效,但由于PDF文档我们应用程序是不可编辑——当遇到PDF时,我们将被迫抛出一个错误,触发一个断言,或以其他方式失败: func openEditor(for...由于我们现在使用一个协议来表示所有的文档格式,我们将需要为我们三种文档类型每一种编写完全重复模型实现,以及我们将来可能增加任何其他格式提供支持。...如果我们再深入一点,就会发现 Swift 标准库将我们上面提到UTF8类型定义另一个类似命名空间枚举一个无大小写枚举,称为Unicode。...一个标准模式 起初,幻象类型 Swift 可能看起来有点 "格格不入"。

    1.5K30

    iOS富文本使用指南: 1、封装富文本API,采用block实现链式编程 2、 超链接属性 3、HTML字符串与富文本互转

    引言 【持续更新】 原文: https://kunnan.blog.csdn.net/article/details/114014827 I、封装富文本API,采用block实现链式编程 iOS开发效率工具...:完整SDK源码【封装富文本API,采用block实现链式编程】(block 妙用:结合block和方法优点实现iOS链式编程) 1、文章:https://blog.csdn.net/z929118967...: 4.1、自定义TextView,采用富文本属性进行内容设置attributedText(包括下划线NSUnderlineStyleSingle、超链接NSLinkAttributeName 、颜色NSForegroundColorAttributeName...: NSHTMLTextDocumentType} documentAttributes:nil error:nil]; IV、富文本适配系统API应用例子 4.1 适配iOS13UI控件...UITextField_placeholderLabel 私有API 问题:iOS13无法直接访问_placeholderLabel.textColor 解决方案:使用 NSMutableAttributedString

    1.5K10

    玩转 Xcode Playground(上)

    如何创建 Playground 项目 Xcode 创建 Playground 项目 Xcode ,点击 File -> New -> Playground 即可创建一个格式.playground...如何获得异步执行结果(Swift Playgrounds Only) 老版本 Xcode(Xcode 12、Xcode 13 已经解决了这个问题)以及 Swift Playgrounds ,如果不经过特别的设定...如何执行 async/await 代码 本节内容并不需要 PlaygroundSupport 支持,但为了同【如何获得异步执行结果】章节靠近,故放置在此处 Playground 中使用 async...如何创建实时视图 你可以使用实时视图来 Playground 添加互动性,试验不同用户界面元素,并建立自定义元素。...如何让其他类型实例实时视图中显示 任何符合 PlaygroundLiveViewable 协议类型,都可以被设置实时视图。

    4K20

    CSS美学(二)文本样式

    运行结果: 小结: 各种字体之间必须使用英文状态下逗号分隔; 一般情况下,如果有空格隔开多个单词组成字体,加引号; 尽量使用系统默认自带字体,保证在任何用户浏览器中都能正确显示。...其中400等同于 normal,700等同于bold,值越大字体越粗 代码: <!...font 属性时,必须按上面语法格式顺序书写,不能更换顺序,并且各个属性间以空格隔开 不需要设置属性可以省略(取默认值),但必须保留 font-size 和 font-family 属性,否则...可以给文本加下划线、删除线、上划线等 语法: 选择器 { text-decoration: 属性值; } 属性值 解释 none 默认。...文本修饰 添加下划线 underline 取消下划线 none line-height 行高 控制行与行之间距离

    7710

    【IOS开发基础系列】下拉刷新专题

    1 UIRefreshControl实现 1.1 使用范围         如果你装了xcode_4.5_developer_preview,那么UITableViewController.h文件你会看到...1.2.1 a)初始化         如何在UITableViewController中使用UIRefreshControl呢,在上面给出代码附件,你可以很详细知道,这里介绍一下关键部分:...声明,想必看了下面的代码,你已经知道如何使用了。...上tableView上 2.4.4 配置视图控制器和页脚EGOTableViewPullRefreshDemoViewController.m     • .m文件加下面代码 #pragma mark...,ViewDidLoad()方法里面添加下面代码(比如 修改刷新和上拉背景色箭头头像等) self.pullTableView.pullArrowImage = [UIImage imageNamed

    19730

    Swift Sendable 和 @Sendable 闭包

    如何使用Sendable协议 隐式一致性消除了很多我们需要自己Sendable协议添加一致性情况。然而,在有些情况下,我们知道我们类型是线程安全,但是编译器并没有为我们添加隐式一致性。...例如,你可以例如 Swift package这样模块定义以下类型: public struct Article { internal var title: String } Article...由于我们给自己和同事增加了额外责任,我不鼓励使用这个属性,建议使用组合、最终类或值类型来实现我们目的。 如何使用 @Sendabele 函数可以跨并发域传递,因此也需要可发送一致性。...Swift 6: 代码启用严格并发性检查 Xcode 14 允许您通过 SWIFT_STRICT_CONCURRENCY 构建设置启用严格并发性检查。...一旦你使用框架被更新Sendable一致性,你可以删除@preconcurrency属性,并修复可能触发警告。

    1.4K30

    Sendable 和 @Sendable 闭包代码实例详解

    如何使用Sendable协议 隐式一致性消除了很多我们需要自己Sendable协议添加一致性情况。然而,在有些情况下,我们知道我们类型是线程安全,但是编译器并没有为我们添加隐式一致性。...例如,你可以例如 Swift package这样模块定义以下类型: public struct Article { internal var title: String } Article...由于我们给自己和同事增加了额外责任,我不鼓励使用这个属性,建议使用组合、最终类或值类型来实现我们目的。 如何使用 @Sendabele 函数可以跨并发域传递,因此也需要可发送一致性。...一个典型例子是Actor isolation中使用闭包。...一旦你使用框架被更新Sendable一致性,你可以删除@preconcurrency属性,并修复可能触发警告。 - EOF -

    1.4K20

    【API使用系列】Core Text专题

    kCTLineBreakByTruncatingMiddle = 5 //一行显示段文字前面和后面文字,中间文字使用...代替。...如果对你应用而言,使用MacRoman文本编码已经足够的话,可以使用CGContextSelectFont函数。绘制文本时,调用CGContextShowTextAtPoint函数。...原因就在于,文本字节映射字体符号时,需要指定一个文本编码,默认文本编码是kCGEncodingFontSpecific,当你调用CGContextShowTextAtPoint时,不能保证一定会获得一个文本编码...由于你调用CGContextSetFont而不是CGContextSelectFont来指定字体,CGContextSetFont你并没有指定文本编码,你也就不能使用CGContextShowTextAtPoint...CGContextSelectFont函数使用十分简单,但不建议你MacRoman以外编码下使用。清单16-1 显示了MyDrawText函数——用于绘制文本,如图16-1所示。

    85030
    领券