使用 UISegmentedControl 进行多项选择 - Pages 使用的是啥?

Posted

技术标签:

【中文标题】使用 UISegmentedControl 进行多项选择 - Pages 使用的是啥?【英文标题】:Multiple selection with UISegmentedControl - what is Pages using?使用 UISegmentedControl 进行多项选择 - Pages 使用的是什么? 【发布时间】:2012-07-31 15:07:45 【问题描述】:

我想制作一个粗体/下划线/斜体工具栏,就像您在 Pages (iPhone/iPad) 上看到的那样。他们使用看似 UISegmentedControl 的东西。

但是他们可以同时选择粗体/下划线,这对于当前的 UISegmentedControl 似乎是不可能的。我能找到的最接近的东西是“瞬间”,它使 UISegmentedControl 像一个按钮数组。

NSSegmentedControl(Mac 版)似乎通过设置 [cell setTrackingMode:NSSegmentSwitchTrackingSelectAny] 具有此功能。它还有 NSSegmentSwitchTrackingMomentary,类似于 UISegmentedControl(使用 BOOL)。

有没有办法对 UISegmentedControl 进行子类化以添加此功能?有没有好的第三方工具栏控件可以做到这一点? Apple 的 Pages 在做什么?

【问题讨论】:

【参考方案1】:

我认为你不能用UISegmentedControl 做到这一点。您可能希望将它们创建为单独的 UIButtons 并为它们做任何您想做的事情。毕竟,您使用的是UIButtons 之类的行为,所以应该不会更难。

【讨论】:

看起来自己动手就是答案。

以上是关于使用 UISegmentedControl 进行多项选择 - Pages 使用的是啥?的主要内容,如果未能解决你的问题,请参考以下文章

UISegmentedControl 自定义/扩展

在 UIToolBar 中调整 UISegmentedControl 的大小,并针对不同的屏幕尺寸进行约束

具有动态大小和 SegmentedItems 的 UISegmentedControl

UISegmentedControl 在 UITableView Header 上的行为很奇怪

升级到 iOS 6 后 UISegmentedControl 的显示问题

UISegmentedControl 寄存器点击选定的段