菜鸟教程小白 发表于 2022-12-12 15:51:54

ios - 尝试将 UITextField 文本转换为 Int Xcode 7 时出现错误


                                            <p><p>我是编程新手,在完成了一些在线教程后,我决定使用 Xcode 7 制作自己的应用程序,以便能够在我的 iPhone 上运行我的应用程序。但是,当我尝试从文本字段中获取输入数据并将其放入 var 时,它会给我一个错误。我尝试使用以下内容:</p>

<pre><code>var initialChips = 0
var initialBlind = 0

@IBOutlet weak var txtBlind: UITextField!
@IBOutlet weak var txtChips: UITextField!
@IBOutlet weak var doneBtn: UIBarButtonItem!

@IBAction func doneBtn(sender: AnyObject) {

    let initialChips:Int? = Int(txtChips.text)
    let initialBlind:Int? = Int(txtBlind.text)
}
</code></pre>

<p>Xcode 会要求输入一个“!”在“.text”之后,但在这样做之后它给了我一个警告:“初始化不可变值'initialChips'(或'initialBlind'从未使用过:考虑替换为'_'或删除它”。</p>

<p>如何为我的 var 设置值?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>问题是 <code>let initialChips:Int? = Int(txtChips.text)</code> 生成一个名为 <code>initialChips</code> 的新变量(与类中的变量不同)。 <code>let</code> 和 <code>var</code> 的区别在于 <code>let</code> 是不可变的,而 var 不是。你应该这样做:</p>

<pre><code>initialChips = Int(txtChips.text)
</code></pre>

<p>将 <code>UITextField</code> 中的整数分配给您的类变量,而不是声明一个新的不可变变量(同名)并且不对其进行任何操作。</p>

<p>当然,<code>initialBlind</code></p>也是如此

<p><strong>编辑:</strong></p>

<p>尝试以下方法:</p>

<pre><code>@IBAction func doneBtn(sender: AnyObject) {

    if let initialChips = Int(txtChips.text!) {
      self.initialChips = initialChips
    }else {
      self.initialChips = 0
    }

    if let initialBind = Int(txtBind.text!) {
      self.initialBind = initialBind
    }else {
      self.initialBind = 0
    }
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 尝试将 UITextField 文本转换为 Int Xcode 7 时出现错误,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/31506824/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/31506824/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 尝试将 UITextField 文本转换为 Int Xcode 7 时出现错误