首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >更改UITextView的字体颜色

更改UITextView的字体颜色
EN

Stack Overflow用户
提问于 2011-08-21 03:29:39
回答 5查看 38.6K关注 0票数 23

我有一个UITextView,用户可以在其中输入文本。假设用户已经输入了一个值。如何通过单击按钮将已键入文本和未来键入文本的字体颜色更改为不同的字体颜色?

我已经将其设置为可以更改文本的颜色,但它只有在我开始键入之前选择颜色时才起作用。在我开始输入并尝试更改颜色后,它什么也不做。

我有这个:

代码语言:javascript
复制
-(IBAction)changeInkColor:(id)sender
{
    [inkTextField setTextColor:[UIColor greenColor]]; 
    inkTextField.text=@"text";
}

这实际上是有效的,只有当视图中没有文本时,才会以绿色显示“文本”。然而,如果我输入一些东西,然后点击这个按钮,什么也不会发生。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-08-21 03:44:33

我刚刚试过了,没有任何问题。我设置了一个名为[myTextView setTextColor:[UIColor redColor]];的按钮

在用黑色文本颜色输入一点后,我按下按钮,一切都变成了红色。然后我继续打字,全是红色的。

你也在使用setTextColor:来做这件事吗?

票数 23
EN

Stack Overflow用户

发布于 2017-04-18 02:45:01

您可以(至少在Xcode8.2中)在IB中通过切换textColor按钮(行中的第六个按钮)来修复此问题。选择此按钮后,如果在视图中输入文本之前以编程方式设置textColor,则颜色将“粘滞”。我还没有找到一种优雅的方法来在文本视图上编程设置它。

但是,您也可以在代码中解决此问题:

代码语言:javascript
复制
textView.text = @" ";
textView.textColor = UIColor.redColor;
textView.text = @"";
票数 1
EN

Stack Overflow用户

发布于 2013-08-27 21:50:36

我遇到了和你一样的问题,然后我意识到文本没有改变颜色,默认情况下是红色的,因为我这样做了:

代码语言:javascript
复制
placeholder = @"Welcome";

而不是

代码语言:javascript
复制
 WelcomeField.text = @"Welcome";

希望能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7134152

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档