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

是否有办法在UITextView/UILabel上使用不同于设置中的文本语言进行正确的连字符?

在UITextView/UILabel上使用不同于设置中的文本语言进行正确的连字符是可能的。这可以通过NSAttributedString来实现,它允许在文本中应用不同的属性。

要在UITextView/UILabel上使用不同的文本语言进行正确的连字符,可以按照以下步骤进行操作:

  1. 创建一个NSMutableAttributedString对象,用于存储文本和属性。
  2. 将要显示的文本分成不同的部分,每个部分都有不同的属性。
  3. 对于需要使用不同的文本语言进行正确的连字符的部分,可以使用NSLigatureAttributeName属性来设置连字符。
  4. 将每个部分的文本和属性添加到NSMutableAttributedString对象中。
  5. 将NSMutableAttributedString对象设置为UITextView/UILabel的attributedText属性。

下面是一个示例代码,演示如何在UITextView上使用不同于设置中的文本语言进行正确的连字符:

代码语言:txt
复制
// 创建NSMutableAttributedString对象
let attributedString = NSMutableAttributedString(string: "Hello, 你好")

// 创建属性字典
let attributes: [NSAttributedString.Key: Any] = [
    .ligature: 1 // 设置连字符为1,表示使用默认的连字符
]

// 设置属性字典到指定的文本范围
attributedString.addAttributes(attributes, range: NSRange(location: 0, length: 5)) // 设置"Hello"部分的属性
attributedString.addAttributes(attributes, range: NSRange(location: 7, length: 2)) // 设置"你好"部分的属性

// 将NSMutableAttributedString对象设置为UITextView的attributedText属性
textView.attributedText = attributedString

这样,你就可以在UITextView上使用不同于设置中的文本语言进行正确的连字符了。

对于UILabel,操作类似,只需将代码中的textView替换为对应的UILabel即可。

请注意,以上示例代码仅演示了如何在UITextView/UILabel上使用不同于设置中的文本语言进行正确的连字符,并没有涉及到云计算相关的内容。如果你有其他关于云计算的问题,欢迎继续提问。

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

相关·内容

iOS文本布局探讨之一——文本布局框架TextKit浅析

iOS文本布局探讨之一——文本布局框架TextKit浅析 一、引言         iOS开发,处理文本视图控件主要有4UILabel,UITextField,UITextView和UIWebView...其中UILabel与UITextField相对简单,UITextView是功能完备文本布局展示类,通过它可以进行复杂文本布局,UIWebView主要用来加载网页或者pdf文件,其可以进行HTML,...TextKit是一个偏上层开发框架,iOS7以上可用,使用它开发者可以方便灵活处理复杂文本布局,满足开发文本布局各种复杂需求。...二、TextKit框架结构         界面进行文本渲染时,下面几个必要条件: 1.要渲染展示内容。 2.将内容渲染在某个视图上。 3.内容渲染在视图上尺寸位置和形状。...越接近1 则使用字符进行单词换行中断概率越大 */ @property(NS_NONATOMIC_IOSONLY) CGFloat hyphenationFactor; //是否使用字体定义行距

1.8K10

iOS文本布局探讨之三——使用TextKit框架进行文本布局

iOS文本布局探讨之三——使用TextKit框架进行文本布局 一、引言         关于图文混排,其实以前博客已经讨论很多,实际开发,经常使用第三方框架来完成排版需求,其中RCLabel...二、原生UILabel真的只能渲染文字么?         CoreText是一个比较底层且十分强大文本渲染框架,但是其使用起来并不是十分方便。较低版本iOS系统,要进行文本排版十分困难。...iOS6,系统为UILabelUITextView等这类文本渲染控件引入了NSAttributedString属性,了NSAttributedString这个类,创建灵活多彩文本控件变得十分轻松...三、为富文本附件添加用户交互能力         TextKit框架强大到只使用UILabel就可以完成复杂文本布局,但是UILabel一个致命缺陷,其无法进行用户交互。...) NSFileWrapper *fileWrapper; 结合UITextView可以为NSAttributedString属性字符串添加超链接,代码回调监听此超链接回调可以获取NSTextAttachment

2.1K20
  • 史上最全iOS之UITextView实现placeHolder占位文字N种方法

    前言 iOS开发,UITextField和UITextView是最常用文本接受类和文本展示类控件。UITextField和UITextView都输入文本,也都可以监听文本改变。...而开发,我们经常会遇到既要占位文字,又要可以多行展示并且可以滚动控件,单纯UITextField或者UITextView都不能满足这种产品需求。...子控件,作为placeholder 3.文本改变代理方法里面显示/隐藏UILabel 特点:该方法同样也可以实现类似于placeholder功能。...setNeedsDisplay]; } - (void)setText:(NSString *)text { [super setText:text]; if (text.length) { // 因为是文本改变代理方法判断是否显示...placeholder,而通过代码设置text方式又不会调用文本改变代理方法,所以再此根据text是否不为空判断是否显示placeholder。

    10.5K40

    文本AttributedString总结

    使用通过将AttributedString赋值给控件 attributedText 属性来添加文字样式。 可设置控件UILabel、UITextField和UITextView。.../* 注:NSLigatureAttributeName设置连体属性,取值为NSNumber对象(整数),1表示使用默认连体字符,0表示不使用,2表示使用所有连体符号(iOS不支持2)。...NSVerticalGlyphFormAttributeName 设置文字排版方向 取值为NSNumber对象(整数),0表示横排文本,1表示竖排文本 iOS只支持0 */ NSString...属性单独列出来,是因为 UILabel 和 UITextField 是无法使用该属性。...更准确点说是UILabel 和 UITextField 无法实现点击链接启动浏览器打开一个URL地址,因为在此过程中用到了一个代理函数。只能用在 UITextView

    3.4K20

    IOS本地化应用

    大家好,又见面了,我是全栈君 BK项目已完成7788,项目的后期需要被翻译成多国语言版。为了适应全球多个国家使用多个存储。...应用本地化是分别对字符串、图片和 xib 或 storyboard 文件本地化,而传统做法是对 xib 字符串(包含UILabel和UIButton、UITextField等)关联一个变量,通过NSLocalizedString...这个函数去查找 Localizeable .strings 文件里key值进行本地化操作,或者是生成同一个xib文件不同语言版本号。...这样做目的是为了尽早发现问题。 (2)冻结UI 应用开发周期中必需要有一个明白时间点来冻结UI。在此之后要坚决杜绝会影响本地化资源变更。nib 文件能够XCode锁定。...不同语言中可能会有不同。 3、注意数字和日期格式化(输入和输出都须要进行格式化)。

    89200

    iOS界面布局之三——纯代码autoLayout及布局动画

    除了使用storyBoard进行布局约束拖拽,有时我们也需要在代码中进行autolayout布局设置,Masonry库可以方便创建约束属性,实际,我们也没有必要再使用系统原生代码来创建和设置约束...创建NSLayoutConstraint对象方法两种,下面我们分别介绍: 1、使用Objective-C风格方法创建约束对象         所谓Objective-C风格方法,就是通过原生枚举和一些属性设置来创建...    NSLayoutAttributeLeading,//起始边,类似左,只某些从右向左排列语言中和NSLayoutAttributeLeft大区别     NSLayoutAttributeTrailing...2.使用ASCLL字符创造艺术般格式化字符串约束         看到这个小标题是不是眼前一亮,这个标题不是我凭空想象出来,apple文档就是这么写。十分可爱,对吧。...VFL语言我个人而言,他很类似于古代象形文字(不知道是否apple工程师从其中得到灵感),对布局约束设置是直观用符号表达出来,例如: H:|-20-[label(100@1000)] 前面的H

    2.9K30

    【iOS 开发】基本 UI 控件详解 (UIButton | UITextField | UITextView | UISwitch)

    UIButton 就是这种控件; -- 静态控件 : 继承了 UIView 基类, 该类控件与用户之间不能交互, 之前使用 UILabel 就是这种控件; -- 被动控件 : 该类控件可以接受用户操作...; -- 高亮 : UI 控件突出显示, 处于高亮状态; 手放在按钮处于高亮状态; -- 禁用 : UI 控件关闭后, 处于禁用状态; 禁用状态控件不可操作, 禁用操作 Interface Builder...文本 和 图片 共同作为按钮背景, 比使用 Image 属性设置图片 显示内容 更丰富; (8) Shadow Offset 属性 Shadow Offset 属性 :  -- 偏移值 : 控制 UILabel...UITextField 属性 (1) PlaceHolder 属性 PlaceHolder 属性 : 属性值是一个字符串, 再文本框没有输入内容时, 文本框内显示灰色文本, 用于作为文本框提示信息...: 勾选该复选框可以确保整个文本文本框总是可见; Min Font Size 属性 :  -- 作用 : 指定文本框内文本最小值, 保证文本框内文本不会因为太小而看不见; (5) Capitalization

    6.8K20

    底牌项目中上传牌谱功能之编辑标准模式

    至于编辑页面的实现,首先是创建UITableView,tableViewCell使用了自定义Cell,Cell子视图主要是一个UITextView(用于编辑内容)、UILabel(标题)、UIButton...难点:获取UITextView文字  (相对于直接创建五个UITextView获取它们text较难) 解决难点: 创建单元格时候为每一个单元格UITextView设置代理,且代理为当前视图...情况2:五个条目有的编辑内容,有的没有编辑内容,这时需要进行处理(我好像又搞复杂了,我是将五个字符串添加到了一个数组,将数组直接传递给预览页面)。...如果没有编辑内容那么某个text字符串就是nil,nil是不能被添加到数组,这是需要将为nil字符设置为@“”。预览页面,如果数组某个元素内容为@“”那么就不显示该内容。...Cell,还是比较笨做法 ) 预览方法取出所有的Cell,如果Cell按钮被选中了就将其对应字符设置为@“”,代码: for (StandardCell * cell in self.tableArr

    85430

    Ios常用第三方框架(一)

    至少storyboard创建时会喜欢。 代码纯手工创建约束灰常痛苦,但幸运是我们了SnapKit,board中用上它,你可以简单直观地编写约束了。...Cartography - Cartography 是用来声明 Swift Auto Layout,无需输入任何 stringly 就可设置自己 Auto Layout 约束声明。...第二个Demo模拟了一个经典FlowLayout,任意一个元素隐藏时,底下元素需要自动“顶”上来,配合这个扩展,你可以IB里,选一选,不用一行代码就能搞定。...TTTAttributedLabel - 一个文字视图开源组件,是UILabel替代元件,可以以简单方式展现渲染属性字符串。...FXLabel - FXLabel是一个功能强大使用简单类库,通过提供一个子类改进了标准UILabel组件,为字体增加了阴影、内阴影和渐变色等,可以被用在任何标准UILabel

    5.4K31

    UI篇-CATextLayer和 富文本交融

    而NSMutableAttributedString可以最自己内容作出颜色以及大小调整,这样结合起来使用的话,就远比UILabel 灵活多,效果也酷炫多,也许CATextLayer就是为了NSMutableAttributedString...[self.view.layer addSublayer:lary]; /* @property CGFloat contentsScale; 使用CATextLayer设置文本,可能会产生模糊状态,...使用通过将AttributedString赋值给控件 attributedText 属性来添加文字样式。属性控件UILabel、UITextField和UITextView。...,我想你一定用不到它 - - //NSVerticalGlyphFormAttributeName 水平或者竖直文本 1竖直 0水平 iOS没卵用,不支持竖版 2.设置段落样式:段落样式中允许你设置文字与文字之间行间距...、字符间距、以及对齐模式,但是注意是,设置段落样式时候,必须保证控件 numberofline属性必须为0 NSMutableAttributedString* str2 = [[NSMutableAttributedString

    2.5K10

    iOS学习——tableview带编辑功能cell键盘弹出遮挡和收起问题解决

    cell当键盘弹出时候表单整体会自动进行移,我们需要编辑区域正好可以键盘上方,这样我们正好也可以看到我们编辑内容,方便我们进行修改和调整具体内容。   ...下面的流程就是UITextField或UITextView整个编辑过程详细流程步骤: 成为第一响应者之前,文本框调用其代理textFieldShouldBeginEditing:  方法来允许或阻止其第一响应者...  我们在对tableview进行调整时,我们需要知道当前编辑cell相对屏幕位置,然后才能判断是否需要移tableview以及移多少。...  在前面的2.1UITextField或UITextView点击之后详细流程分析我们知道,点击文本之后弹出键盘时会发送一个UIKeyboardWillShowNotification通知,...那么,首先我们需要对对应通知进行注册,然后设置监听到对应通知之后应该采取行动和措施。

    3.9K80

    UIKit框架 - TextKit

    Text View是用来显示文本内容控件,主要包括UILabelUITextView和UITextField。 Text containers对应着NSTextContainer类。...该类负责对文字进行编辑排版处理——通过将存储NSTextStorage数据转换为可以视图控件显示文本内容,并把统一字符编码映射到对应字形(glyphs),然后将字形排版到NSTextContainer...该类定义了Text Kit扩展文本处理系统基本存储机制。NSTextStorage继承自NSmutableAttributedString,主要用来存储文本字符和相关属性。...另外,当NSTextStorage字符或属性发生了改变,会通知NSLayoutManager,进而做到文本内容显示更新。...然后通过一个管理者(NSLayoutManager)把文字显示容器,形成一个我们看到UILable。

    1.1K40

    iOS 10如何搭建一个语音转文字框架

    今天教程里面,我会教你怎样创建一个使用Speech Kit来进行语音转文字类似Siriapp。...接下来,到 Main.storyboard 添加一个 UILabel,一个 UITextView, 和一个 UIButton,你storyboard应该看起来如下图: ?...接下来 ViewController.swift文件UITextView 和UIButton 定义outlet变量。...所有的语音数据都会被传递到苹果后台进行处理。因此,获取用户授权是强制必须。 让我们 viewDidLoad 方法里授权语音识别。用户必须允许app使用话筒和语音识别。...总结 在这个教程,你学习到了怎样好好利用苹果公司开放给开发者惊人语言API,用于语音识别并且转换到文本。Speech framework 使用了跟Siri相同语音识别框架。

    2K20

    iOS 文本输入控制(献上框架)

    但是我们仍然需要设置代理、实现代理,然后写上一堆判断逻辑,总是一些奇奇怪怪问题导致最终结果不能很快完美呈现。...resultStr 判断是否包含非法字符是否超长(可使用正则表达式处理) ...... } 这种方式就是文本绘制之前会走代理方法,我们可以在里面将非法字符扼杀在摇篮。...在这里限制了非法字符:比如在该代理方法限制空格为非法字符,那么输入到jian s时候,就会出现点击无反应,因为此时已经非法字符出现,文本不允许录入。...(解决方法github里面有讲,只是在对应方法调用一下框架方法就行了) UITextView不能使用该方案 其实,采用这种处理办法可能会带来某些隐患。...UITextView,没有使用这种方法。

    1.1K120

    iOS表情键盘完整实现

    市面上表情键盘分析 首先来看一下市面上主要几个APP表情键盘,平时使用时候不会去关注细节,这次特意去使用了表情键盘,发现各个APP体验还是。...首先是QQ和微信,这两者差不多,切换到表情键盘时候都是没有光标的,这样用户体验是非常不好,没有办法输入表情时候框选区域,也不能拖动光标进行特定位置复制黏贴删除等操作,微信甚至输入框里显示都不是点击表情图片...iOS11UITextViewNSTextAttachment(表情)默认可以进行拖拽交互,但是却导致拖动光标时很容易触发这个交互(图示可以查看上面说到微博国际版误触)。...} 与服务交互 我们输入框输入内容与服务端进行交互时候都是用纯文本,比如会把 "笑死了?"...就会从4个字符变成1个字符,这里是差值,如果不处理的话就会出现上面提到微博国际版复制黏贴输入框表情会导致光标位置不对,甚至莫名其妙多出前后空格问题。

    2K30

    iOS 优化界面流畅技巧

    文本渲染 屏幕能看到所有文本内容控件,包括 UIWebView,底层都是通过 CoreText 排版、绘制为 Bitmap 显示。...常见文本控件 (UILabelUITextView 等),其排版和绘制都是主线程进行,当显示大量文本时,CPU 压力会非常大。... Twitter Demo ,我为了图省事儿用到了不少 layer 圆角属性,你可以低性能设备(比如 iPad 3)快速滑动一下这个列表,能感受到虽然列表并没有较大的卡顿,但是整体平均帧数降了下来...我做法是尽量快速、提前判断当前绘制任务是否已经被取消;绘制每一行文本前,我都会调用 isCancelled() 来进行判断,保证被取消任务能及时退出,不至于影响后续操作。...(- -太吊了)显示简单单张图片时,利用 UIView.layer.contents 就足够了,没必要使用 UIImageView 带来额外资源消耗,为此我 CALayer 添加了 setImageWithURL

    1.5K10
    领券