将图像和标题添加到UIsegmentControl IOS

时间:2015-06-22 06:19:03

标签: ios uiimage title uisegmentedcontrol

有没有办法可以同时设置UISegmentControl的图片和标题,以便图片显示在标题旁边,就像图片显示在UIButton标题旁边一样。

我正在尝试,但如果我设置UISegmentControl的选定片段的图像,则标题消失,如果我设置了UISegmentControl的所选片段的标题,则图像消失,我想一次设置两者。

1 个答案:

答案 0 :(得分:7)

-setImage:forSegmentAtIndex:的官方文档说

  

一个片段只能有图像或标题;它不能兼得。没有默认图像。

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

但是,有几种方法可以通过不同方式实现目标。

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