gpt4 book ai didi

ios - UISegmentedControl 在 UITableView Header 上的行为很奇怪

转载 作者:可可西里 更新时间:2023-11-01 02:16:58 32 4
gpt4 key购买 nike

我创建了一个自定义单元格来替换 UITableViewSectionHeader 并在 UISegmentedControl.index 更改时使用协议(protocol)进行处理,这样我就可以按名称或值对表进行排序:

Custom Cell

import UIKit
protocol OrdenarTableViewDelegate {
func ordenarTableView(cell: OrdenarTableViewCell)
}
class OrdenarTableViewCell: UITableViewCell {
var delegate: OrdenarTableViewDelegate?
@IBOutlet weak var segmentedOrdenar: UISegmentedControl!
@IBAction func alteraOrdenacao(sender: UISegmentedControl) {
delegate?.ordenarTableView(self)
}

在 UITableViewControler 上我引用了协议(protocol)

class SelecionadasTableViewController: UITableViewController, UITextFieldDelegate, OrdenarTableViewDelegate {

并实现了它:

    // MARK: - Ordenar Delegate
func ordenarTableView(cell: OrdenarTableViewCell) {
if cell.segmentedOrdenar.selectedSegmentIndex == 0 {
listaCervejas = bancoDeDados.selecionaCervejas(false)
} else {
listaCervejas = bancoDeDados.selecionaCervejas(true)
}
ordenarCervejas = cell.segmentedOrdenar.selectedSegmentIndex
tableView.reloadData()
}

When I select the index 1, the app works just fine, but when index 0 is selected the action is only performed if click on a UITextField on any other cell or I pull the table down for刷新(顺便说一句,没有实现刷新)

有什么我想念的吗?因为感觉真的很尴尬。


我注意到只有当我在 UISegmentedControl 上单击一个选项然后单击另一个选项而没有触摸屏幕上的其他任何地方时才会出现问题...

最佳答案

您可以创建一个自定义 View 来替换 tableHeaderView,试试吧。

关于ios - UISegmentedControl 在 UITableView Header 上的行为很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37041665/

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