gpt4 book ai didi

ios - 有什么方法可以使 UISegmentedControl 中的段宽度与内容成正比?

转载 作者:行者123 更新时间:2023-11-29 01:17:51 25 4
gpt4 key购买 nike

UISegmentedControl 中的段与内容成比例的情况下,widthForSegmentAtIndexviewDidLayoutSubviews 调用时似乎返回 0。无论如何要获得实际宽度? (我正在使用自动布局。)

如果没有,有什么方法可以得到对应于段的 subview ? segmentedControl.subviews[index] 无法可靠地工作。

如果没有办法做到这一点,是否可以使用 UISegmentedControl 的替代方案?

谢谢!

最佳答案

根据我的测试,无论每个单独的段的文本大小如何,段的宽度似乎总是相等的。

CGFloat segmentWidth = segmentedControl.frame.size.width/segmentedControl.numberOfSegments;

编辑

不幸的是,如果 segmentedControl 使用 apportionsSegmentWidthsByContent,则上述答案无效。在那种情况下,我找不到一种简单的方法来获取段的宽度。

但是,您可以手动获取您感兴趣的片段的文本,然后计算它“应该”多长(取决于您想要两侧的填充量),然后使用该数字并使用 setWidth:forSegmentAtIndex: 方法将段设置为计算出的宽度,然后您就可以确定段的宽度。

关于ios - 有什么方法可以使 UISegmentedControl 中的段宽度与内容成正比?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34954222/

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