将图像和标题都添加到 UIsegmentedControl IOS

Adding Image And title both to UIsegmentControl IOS

有什么方法可以同时设置 UISegmentControl 的图片和标题,让图片出现在标题旁边,就像 UIButton 中图片出现在标题旁边一样。

我正在尝试,但是如果我设置了 UISegmentControl 的所选片段的图像,那么标题就会消失,如果我设置了 UISegmentControl 的所选片段的标题,那么图像就会消失,我想将两者都设置为时间.

-setImage:forSegmentAtIndex: 的官方文档说

A segment can only have an image or a title; it can’t have both. There is no default image.

所以,不,没有办法使用图像和标题属性来做你想做的事。

但是,有几个选项可以以不同的方式完成 objective。

  • 如果您要为每个片段使用相同的图像,您可以使用外观方法设置背景,然后使用方法-setContentOffset:forSegmentAtIndex:将标题移动到背景图像的一侧。
  • 您可以创建一个包含图标和文本的图像。这不太理想,因为对文本的更改需要再次导出整个资产。但是是一个选项。
  • 最不理想的是使用您编写代码来处理状态更改的按钮来伪造分段控件。甚至可能有一些开源选项可以做到这一点,所以请随意搜索它们。