- 获取滑块上方坐标:
比如infoView是上面要显示的坐标,scrubberSlider是UISlider:
self.infoView.hidden = NO;
CGRect trackRect = [self.scrubberSlider convertRect:self.scrubberSlider.bounds toView:nil];//可能scrubberSlider嵌套,求出scrubberSlider在最外层(infoView父层)的frame
CGRect thumbRect = [self.scrubberSlider thumbRectForBounds:self.scrubberSlider.bounds trackRect:trackRect value:self.scrubberSlider.value];//得到滑块在最外层(infoView父层)的frame
求info的x,y
CGRect rect = self.infoView.frame;
[self.infoView sizeToFit];
rect.origin.x = (thumbRect.origin.x) - ceilf(CGRectGetWidth(self.infoView.frame) / 2) + 16;
rect.origin.y = self.boundsHeight - 80;
self.infoView.frame = rect;
- UISlider两边有空隙的解决方法:
重写UISlider的这个方法:改变滑块的触摸范围
- (CGRect)thumbRectForBounds:(CGRect)bounds trackRect:(CGRect)rect value:(float)value
{//返回滑块大小
rect.origin.x = rect.origin.x - 10 ;
rect.size.width = rect.size.width +20;
return CGRectInset ([super thumbRectForBounds:bounds trackRect:rect value:value], 10 , 10);
}
当然UISlider还有这么几个方法可以重写:
// 控制slider的宽和高,这个方法才是真正的改变slider滑道的高的
-(CGRect)trackRectForBounds:(CGRect)bounds
{//返回滑道大小
bounds.origin.x=15;
bounds.origin.y=bounds.size.height/3;
bounds.size.height=bounds.size.height/5;
bounds.size.width=bounds.size.width-30;
return bounds;
}
- (CGRect)minimumValueImageRectForBounds:(CGRect)bounds
{//返回左边图片
return CGRectMake(0, 0, CGRectGetWidth(self.frame), CGRectGetHeight(self.frame));
}
- (CGRect)maximumValueImageRectForBounds:(CGRect)bounds
{//返回右边图片
return CGRectMake(0, 0, CGRectGetWidth(self.frame)/ 2, CGRectGetHeight(self.frame) / 2);
}
相关推荐
PC上的滑块是很丑陋的,因为我们只能通过鼠标去拖动他。不过当Jobs把它移植到IOS上时一切变得酷起来,因为我们可以通过手指去拖动它,这种感觉是很妙的。 滑块为用户提供了一种可见的做范围调整的方法,用户可以通过...
实现了一个有两个滑块,可以选择一个范围的UISlider。是在网上找到的一个控件的基础上作了包装,可以实时显示现在选择范围。可用于选择价格范围等。 现有的问题: 1、没有实现step的功能。 2、滑块的滑动还不是特别...
基于系统UISlider 解决滑块不灵敏 显示百分比
自定义UISlider, 翻页时显示页数, 翻页进度, 点击slider滑块快速翻页
列举了UISlider的一些常用属性及用UISlider控制uilabel内字体的大小,
11.UI基础之UISlider&UISwitchoverride func viewDidLoad() {// 左边的图标// 右边的图标// 设置滑块图标/
ios的UISlider自定义,用图片自定义添加
一个实用的自定义双按钮UISlider实例: 1、可根据用户需要设定最大值和最小值; 2、可以实时获取左侧按钮和右侧按钮分别对应的值; 3、滑动灵活精准,数值变化实时准确; 4、完全开源,开以者可以根据自己需要做相应...
UISlider Demo IOS 控件 代码
UISlider-TrackHeight 调整UISlider的滑动条高度 Import pod 'UISlider-TrackHeight', '~> 1.0.2' Usage #import "UISlider+VDTrackHeight.h" self.slider.vd_trackHeight = 5.0f; License
iphone中的基础控件UISlider,适合初学者,主要学习UISlider的常用属性设置、点击事件、以及替换滑块图片等
移动滑动条就可以设置文字控件背景颜色的绿色纸 在文字控件中设置0~1.0的浮点值就卡可以设置文字控件背景颜色的红色值 核心带啊: float fAlpha = mySlider.value / (mySlider.maximumValue-mySlider.minimumValue...
UISlider控制背景颜色
UISLider滑条图标大小位置,滑条大小颜色形状设置Demo
TGP控件带有刻度和动画标签的滑块(快速) TGPControls是UISlider和UILabel的UISlider替代,具有Interface Builder中的视觉预览,单眼线检测,流畅的动画,简单的API,强大的自定义功能。什么是DiscreteSlider? ...
UISlider 和 UIProgressView的自定义使用,随意进行修改扩展,有详细的代码注释,自己进行扩展使用
这使我们能够将本机范围滑块组件放置在我们的混合应用程序中,或者如果我们需要常规的UISlider。 本机组件基于NMRangeSlider: : 随时为该项目做出贡献,并为该插件提供更多功能。 您可以在以下链接中找到有关如何...
详细讲解UISlider的用途,以及基本的实现方法,有执行代码
源码JAMAccurateSlider,JAMAccurateSlider是UISlider的一个子类,行为非常类似于UISlider。当用户滑动滑块儿时,给定范围两端会出现两个小的卡尺,以展示精确程度。 测试环境:Xcode 5.0,iOS 6.0以上