如何降低 UISlider 框架高度?
Posted
技术标签:
【中文标题】如何降低 UISlider 框架高度?【英文标题】:How to reduce UISlider frame height? 【发布时间】:2014-01-09 10:35:02 【问题描述】:原来UISlider
的框架高度有一个下限。 ios 6
是 23 像素,iOS 7
是 34 像素。但这对我来说太多了,我需要让它更小。如果不使用CGAffineTransformMakeScale
,我怎么能做到这一点(我已经尝试过了,但不喜欢它的外观)?或者也许我只是错过了一些非常简单的东西?
【问题讨论】:
使用自动布局 Pin 高度给 UISlider 取 IBOutlet 的高度,然后设置常量为 23;我不确定这是否正确。 我不使用 IB,所以请您删除几行代码吗? 考虑到你正在使用 xib/storyboard 来做这件事。选择 UISlider 转到 -> Editor -> Pin -> “Height”。现在采取 IBOutlet @property (strong, nonatomic) IBOutlet NSLayoutConstraint *sliderHeight;设置在.m self.sliderHeight.constant = 23; 只需通过设置最小和最大轨道图像来自定义您的UISlider
,并设置想要的图像高度。
【参考方案1】:
没有可用于执行此操作的属性。 我确实找到了一个github project,它允许您设置栏的高度。
或者查看 Cocoa Controls 上的 results 'Slider'。
【讨论】:
【参考方案2】:为情节提要中的滑块分配高度约束。
【讨论】:
【参考方案3】:您必须使用较小尺寸的图像:
[slider setThumbImage:[UIImage imageNamed:@"Thumb"] forState:UIControlStateNormal]; // slider thumb should be square image
[slider setThumbImage:[UIImage imageNamed:@"Thumb"] forState:UIControlStateHighlighted]; // slider thumb on touch
[slider setMinimumTrackImage:[UIImage imageNamed:@"rMin"] forState:UIControlStateNormal]; // thumb left part
[slider setMaximumTrackImage:[UIImage imageNamed:@"Max"] forState:UIControlStateNormal]; // thumb right part
仔细选择图像,现在它的 Photoshop 工作
【讨论】:
以上是关于如何降低 UISlider 框架高度?的主要内容,如果未能解决你的问题,请参考以下文章