【问题标题】:setText method for UITextView only works from the second time since the method is called.UITextView 的 setText 方法仅在第二次调用该方法后才有效。
【发布时间】:2013-05-30 16:28:40
【问题描述】:

我在使用 UITextView 的 setText 方法时遇到问题。

正如我在标题中所说,我尝试使用 setText 方法更改 UITextView 文本或直接更改 text 属性。它只在调用该方法后的第二次开始起作用。

我的 UITextView 是一个出口。我什至尝试直接从所有者类更改它的文本或创建一个从另一个类调用的方法,但它的行为相同。

我不知道我在创建它作为出口时是否做错了什么,我也尝试将它设置为非原子,强,弱,保留但我仍然无法得到它。

对我的情况有什么建议吗?提前致谢! :)

编辑: 我从 David H 的回答中发现了这一点。

由于我的应用程序使用选项卡,第一个选项卡用于搜索单词,第二个选项卡用于显示含义,我尝试在创建插座之前设置文本(因为我还没有点击第二个选项卡)。如果我首先单击选项卡含义以创建插座,则它可以完美运行。

感谢大家的回答!

【问题讨论】:

  • 建议:显示您的代码。
  • 你想在哪里改变它的文字?初始化方法?视图加载?自定义方法?使用我的读心能力(因为你没有显示你的代码),我猜你试图在设置插座之前调用 setText 方法。
  • 嗨,我想通了并编辑了。无论如何,您的回答也对我有所帮助,如果在 init、didload 或自定义方法中调用该方法,我会记住。非常感谢!

标签: ios objective-c uitextview


【解决方案1】:

几乎可以肯定,当您第一次尝试设置它时,outlet 为 nil - 尚未设置。所以在设置之前添加一个断言(assert(myTextView),或者至少添加一个 NSLog 消息。你第一次尝试肯定会发现 textView 为 nil。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-17
    • 2021-06-08
    相关资源
    最近更新 更多