【问题标题】:iOS 13 - UISegmentedControl - How do you change the corner radius of the selectedSegment?iOS 13 - UISegmentedControl - 如何更改 selectedSegment 的圆角半径?
【发布时间】:2019-11-25 03:18:24
【问题描述】:

关于 UISegmentedControl 上的 iOS 13 更新:

此自定义 UISegmentedControl 类将分段控件的角变圆。但它不会圆化所选控件的角(仍具有默认角半径)。这使它看起来很奇怪,尤其是当您在分段控件上有边框时:

class SegmentedControl: UISegmentedControl {
      override func layoutSubviews() {
        super.layoutSubviews()

        layer.cornerRadius = 20
        layer.masksToBounds = true
        clipsToBounds = true
     }
}

在你可以只做segmentedControl.layer.cornerRadius = 20 之前它会适用于所有事情,但你不能再这样做了。

有人知道吗?

【问题讨论】:

  • 你说的是哪一端?圆角半径似乎在起作用,你能附上一张关于你的样子的图片吗?

标签: ios swift uisegmentedcontrol ios13


【解决方案1】:

UISegmentControl 不会公开任何更改的内部子视图。您可以使用自定义分段控件,该控件将为自定义提供更多选项。这是 Github 上搜索的第一个建议结果的示例:https://github.com/sasojadrovski/SJFluidSegmentedControl

【讨论】:

    猜你喜欢
    • 2014-06-12
    • 1970-01-01
    • 1970-01-01
    • 2014-07-07
    • 1970-01-01
    • 2019-10-19
    • 2018-08-12
    • 1970-01-01
    • 2016-03-28
    相关资源
    最近更新 更多