将 UITextLayer 文本设置为 CATextLayer?

Posted

技术标签:

【中文标题】将 UITextLayer 文本设置为 CATextLayer?【英文标题】:set UITextLayer text to a CATextLayer? 【发布时间】:2013-04-25 21:12:01 【问题描述】:

我有一个 UIAlertView 要求输入,然后输入保存到 UITextField。然后我希望能够将 CATextLayer 的字符串设置为 UITextField 的文本。我可以 NSLog 文本字段中的文本以确认它设置得很好:

NSLog (@"name = %@", nameTextField.text);

但是如果我尝试使用类似的代码来设置 CATextLayer 的字符串:

[nameLayer setString:@"%@", nameTextField.text];

我收到一条错误消息,提示“方法调用的参数太多,预期为 1,有 2 个”。我需要做什么才能将 nameLayer 中的字符串设置为与 nameTextField 中的文本相同?

【问题讨论】:

【参考方案1】:

问题是setString: 需要一个参数,任何你发送的参数都是两个:@"%@"nameTextField.text

你应该会做[nameLayer setString:nameTextField.text];甚至nameLayer.string = nameTextField.text;

【讨论】:

有趣,我不知道它会将这些视为单独的参数。这就像一个魅力,谢谢! @lunadiviner 是的,您传递的语法与 stringWithFormat: 之类的语法相同,其参数签名为 (NSString *)format, ...

以上是关于将 UITextLayer 文本设置为 CATextLayer?的主要内容,如果未能解决你的问题,请参考以下文章

将提示设置为文本字段中文本的开头

UITextField 将光标设置为开始文本位置

将按钮文本设置为问号

如何将粗体文本设置为 Android Snackbar 操作文本?

将最小值设置为文本框

如何将打印机设置保存为文本文件