我试图实施一种习俗,即UISlider(UISlider子级),其行为方式与土长相似,后者在强调时在umb子上low下low。 但我对此感到不安。
突出的umb(有效)的宽度显然高于正常的umb(因为low浅)。 如果我加上透明的粉碎图,使这两种图像都具有同样的宽度,那么问题就是,正常状态从来不像它所走到轨道的末端(它确实达到目的,但dding似乎相反)。
如果我使用th子(th子)来抵消umb子,使之与轨道的开端正确一致,那么这个问题只会在另一端恶化。
如果我只把这两个图像放在所需的广泛位置(即,在正常状态下不穿胎,而两者并非相同的宽度),我就更接近。 我可以独立地在umb子里打下冲锋枪。 RectForBounds: based on the UIControl.state, but it好像那里有一些数学魔.在幕后。 伊斯兰学生联盟认为这两个邦的图像完全吻合的唯一地方是确切的中心。
似乎我需要执行一些数学,根据沿轨道的相对立场,确定对重点国家的抵消。 该中心需要一个零的决赛(UISlider将集中两个图像,这意味着它们能够调和)。 在极端的情况下,它将需要一个完全为低谷物开端的冲抵。 在这两种情况下,都需要对冲破物进行污染。
这似乎与许多工作一样,可以重新研究当地血统的人所做的事情,因此,我也许没有明显的东西。
Update Current solution:
它并非完全可行,因为它对增加的低温面积提出了一些假设。 我用图像添加电线,而不是直接引向医疗家。 我没有检测到如何做到这一点。
基本上,我制造一层楼,其尺寸为缺省形象的高端,把它放在umb上,然后把low(只有low光,而不是像用高光国家形象做的那样,用low光的单独形象)带入层。
- (CGRect)thumbRectForBounds:(CGRect)bounds trackRect:(CGRect)rect value:(float)value {
CGRect r = [super thumbRectForBounds:bounds trackRect:rect value:value];
[thumbHighlightOverlayLayer removeFromSuperlayer];
thumbHighlightOverlayLayer = [CALayer layer];
int x = r.origin.x + (r.size.width / 2) - (r.size.height / 2);
thumbHighlightOverlayLayer.frame = CGRectMake(x, r.origin.y, r.size.height, r.size.height);
UIImage* thumbHighlightOverlayImage = [UIImage imageNamed:@"thumb-highlight"];
thumbHighlightOverlayLayer.contents = (id)thumbHighlightOverlayImage.CGImage;
switch (self.state) {
case UIControlStateHighlighted:
[[self layer] addSublayer:thumbHighlightOverlayLayer];
break;
default:
break;
}
return r;
}