Ios 当用户在任意位置键入时,如何强制UITextView使用默认NSFont属性
我有一个Ios 当用户在任意位置键入时,如何强制UITextView使用默认NSFont属性,ios,uitextview,nsattributedstring,nstextstorage,Ios,Uitextview,Nsattributedstring,Nstextstorage,我有一个UITextView,它用两种不同的字体显示NSAttributedText。想象: “此处示例文本。” 如果用户最多删除字符“t”,或选择文本中间部分,然后键入“hahaha”,则新文本将以粗体显示。所以它看起来像: “样本Tehahahaxt此处。”或“样本Texthahaha此处。” 那么:我该如何防止这种情况?换句话说,当用户开始键入时,我如何强制UITextView仅使用特定字体,无论它在哪里 注意:我已经尝试在-textView:shouldChangeTextInRange
UITextView
,它用两种不同的字体显示NSAttributedText
。想象:
“此处示例文本。”
如果用户最多删除字符“t”,或选择文本中间部分,然后键入“hahaha”,则新文本将以粗体显示。所以它看起来像:
“样本Tehahahaxt此处。”或“样本Texthahaha此处。”
那么:我该如何防止这种情况?换句话说,当用户开始键入时,我如何强制UITextView
仅使用特定字体,无论它在哪里
注意:我已经尝试在
-textView:shouldChangeTextInRange:
中设置UITextView
的typingAttributes
属性,但它会更改内容大小,这对我不起作用。在代理中实现textViewDidChange:方法并执行以下操作
-(void)textViewDidChange:(UITextView *)textView
{
NSAttributedString *attributedText = textView.attributedText;
if (attributedText)
{
textView.text = attributedText.string;
}
}
在委托中实现textViewDidChange:方法并执行以下操作
-(void)textViewDidChange:(UITextView *)textView
{
NSAttributedString *attributedText = textView.attributedText;
if (attributedText)
{
textView.text = attributedText.string;
}
}
你需要在这里发布你的代码,否则很难判断发生了什么。这里不需要代码。您可以通过一个带有属性文本的UITextView并给一个单词一个粗体字体来复制它。您需要在这里发布代码,否则很难判断发生了什么。这里不需要代码。你可以通过一个带有属性文本的UITextView来复制它,并给一个单词一个粗体字体。这不是OP想要的。这消除了所有格式。我不想操纵我的字符串或它的属性。我只是希望新文本始终保持一定的格式。这不是OP想要的。这消除了所有格式。我不想操纵我的字符串或它的属性。我只是希望新文本始终保持一定的格式。