gpt4 book ai didi

ios - 如何在 iOS (Xcode) 中的提交按钮内实现分段控制?

转载 作者:行者123 更新时间:2023-11-28 05:51:50 25 4
gpt4 key购买 nike

我在提交按钮内有一个针对性别的分段控件,但是,它给出了一个错误说明:

“无法将类型“String”的值分配给类型“UISegmentedControl!””

有谁知道如何在按钮内正确编写分段控件的代码,以便当用户点击提交按钮时,它会在页面上显示所选的性别?

编辑:我要回答的问题是:

“实现一个包含姓名、地址和步进器(年龄)和两个分段控件(“男性/女性”和“已注册/未注册”)的输入字段的应用程序。当用户单击提交按钮时, 它会在页面上显示消息,例如 Hello Name, Address: Address, Age: Age, Gender: Male/Female, Status: Enrolled/Not Enrolled。”

这是我的代码:

import UIKit

class ViewController: UIViewController {

@IBOutlet weak var nametxt: UITextField!
@IBOutlet weak var age: UIStepper!
@IBOutlet weak var addresstxt: UITextField!
@IBOutlet weak var status: UISegmentedControl!
@IBOutlet weak var gender: UISegmentedControl!
@IBOutlet weak var display: UILabel!


override func viewDidLoad() {
super.viewDidLoad()

age.wraps = true
age.autorepeat = true
age.maximumValue = 100
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

@IBAction func submit(_ sender: Any) {
var txtname : String
var txtaddress : String
txtname = nametxt.text!
txtaddress = addresstxt.text!


if self.gender.selectedSegmentIndex == 0 {
gender = "male"
}

if self.gender.selectedSegmentIndex == 1 {
gender = "female"
}

display.text = "Hello " + txtname + ", " + "Address: " + txtaddress
+ ", " + "Gender: " + gender

}
}

最佳答案

这个错误发生的原因只是编译器描述的:) 只需使用 String 而不是 SegmentControl... gender 是类型 SegmentControl 所以你不能将它与其他字符串连接...

使用titleForSegment(at:)得到正确的字符串值

display.text = "Hello " + txtname + ", " + "Address: " + txtaddress<br/>
+ ", " + "Gender: " + gender.titleForSegment(at: gender.selectedSegmentIndex)

而且你可以摆脱上面的条件...

其他选项是在 IBAction 中设置新的私有(private)属性

@IBAction func submit(_ sender: Any) {
// Fixed your codestyle and semantics as well
let txtname = nametxt.text ?? "missing name"
let txtaddress = addresstxt.text ?? "missing address"

let txtgender = gender.titleForSegment(at: gender.selectedSegmentIndex)
display.text = "Hello " + txtname + ", " + "Address: " + txtaddress
+ ", " + "Gender: " + txtgender

}
}

` https://developer.apple.com/documentation/uikit/uisegmentedcontrol/1618561-titleforsegment

关于ios - 如何在 iOS (Xcode) 中的提交按钮内实现分段控制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52676658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com