gpt4 book ai didi

ios - 点击已经选中的segment control swift

转载 作者:搜寻专家 更新时间:2023-11-01 06:07:10 27 4
gpt4 key购买 nike

我有一个包含 4 个段的 UISegmentedControl。选择后,它应该弹出 View 。当弹出窗口消失,并尝试点击相同的段索引时,它应该再次显示弹出窗口。通过使用 following 在弹出窗口关闭后对单击相同段索引没有任何操作。

segHeader.addTarget(self, action: Selector("valuechange:"), forControlEvents: .AllEvents)

segHeader.addTarget(self, action: Selector("valuechange:"), forControlEvents: .ValueChanged)

最佳答案

经过大量研究我能够解决它。

我在这里写下答案,可能对以后的其他人有帮助。

当按下段控制时,编写下面的代码。

@IBAction func segHeaderPressed(发件人:UISegmentedControl){

如果 segHeader.selectedSegmentIndex == 0{

让 sortedViews = sender.subviews.sort( { $0.frame.origin.x < $1.frame.origin.x } )

        for (index, view) in sortedViews.enumerate() {
if index == sender.selectedSegmentIndex {
view.backgroundColor = iOSBlueColor // UIColor.blueColor()
} else {
view.backgroundColor = UIColor.clearColor()
}
}

selectedInd = -1

//你的代码... }else if(segHeader.selectedSegmentIndex == 1){

        let sortedViews = sender.subviews.sort( { $0.frame.origin.x < $1.frame.origin.x } )

for (index, view) in sortedViews.enumerate() {
if index == sender.selectedSegmentIndex {
view.backgroundColor = iOSBlueColor //UIColor.blueColor()
} else {
view.backgroundColor = UIColor.clearColor()
}
}

//你的代码...}else if(segHeader.selectedSegmentIndex == 2){

让 sortedViews = sender.subviews.sort( { $0.frame.origin.x < $1.frame.origin.x } )

        for (index, view) in sortedViews.enumerate() {
if index == sender.selectedSegmentIndex {
view.backgroundColor = iOSBlueColor //UIColor.blueColor()
} else {
view.backgroundColor = UIColor.clearColor()
}
}

}否则如果(segHeader.selectedSegmentIndex == 3){

让 sortedViews = sender.subviews.sort( { $0.frame.origin.x < $1.frame.origin.x } )

        for (index, view) in sortedViews.enumerate() {
if index == sender.selectedSegmentIndex {
view.backgroundColor = iOSBlueColor //UIColor.blueColor()
} else {
view.backgroundColor = UIColor.clearColor()
}
}

}

基本上,分段控制功能一旦被选中,如果您再次点击它就不会响应。所以我只是改变了所选部分的背景颜色。希望对某人有所帮助。

关于ios - 点击已经选中的segment control swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34513359/

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