【问题标题】:iOS - iPhone : UISlider track image disappearing randomlyiOS - iPhone:UISlider 轨道图像随机消失
【发布时间】:2012-02-16 18:59:01
【问题描述】:

我有一个自定义的 UISlider,它的轨迹图像有时会消失。它是随机发生的,当它的父视图控制器被推到可见时(我从来没有看到它实际上消失了)。

这是我设置 UISlider 的代码:

timeSlider = [[UISlider alloc] initWithFrame:CGRectMake(55, 8, 210, 23)];
timeSlider.backgroundColor = [UIColor clearColor]; 

UIImage *blutrackImg = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluetrack" ofType:@"png"]];
UIImage *whitetrackImg = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"whitetrack" ofType:@"png"]];

//UIEdgeInsetsMake(top,left,bottom,right)
UIImage *stetchLeftTrack = [blutrackImg stretchableImageWithLeftCapWidth:9.0 topCapHeight:0.0]; 
UIImage *stetchRightTrack = [whitetrackImg stretchableImageWithLeftCapWidth:9.0 topCapHeight:0.0];
[timeSlider setThumbImage: [UIImage imageNamed:@"whiteslide2.png"] forState:UIControlStateNormal];
[timeSlider setMinimumTrackImage:stetchLeftTrack forState:UIControlStateNormal];
[timeSlider setMaximumTrackImage:stetchRightTrack forState:UIControlStateNormal];

timeSlider.continuous = NO;
[timeSlider addTarget:self action:@selector(trackTime:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:timeSlider];

我正在构建 iOS 5.0。有没有人遇到过这样的事情?

【问题讨论】:

    标签: iphone ios image customization uislider


    【解决方案1】:

    解决方案:我认为这个问题是由以下错误引起的:

    我有一个计时器,它使用 slider.value 属性而不是 [slider setValue: animated:] 方法设置滑块的值。我也没有检查设置的值。

    解决这些问题已经解决了问题。

    【讨论】:

    • 如下 DreamTimeStudioZ 所述,主要问题是完整性检查,而不是 setValue。非常感谢您发布您的解决方案:)
    【解决方案2】:

    我第二个“答案”并想特别是。指出关于健全性检查值的一点。我认为使用slider.value 或[slider setValue] 并不重要,将其设置为NaN 意味着iOS5 中的背景会消失。

    注意:如果您使用 iPod 库并询问当前位置,则经常会发生将 NaN 作为返回值的情况。

    【讨论】:

    • 这也正是我的问题,而不是 setValue 问题。非常感谢。
    【解决方案3】:

    我有同样的问题,它是由重复资源引起的。如果在 xCode 中重命名资源,请在 Build Phases 中检查它。

    【讨论】:

      【解决方案4】:

      NaN 也是我的问题,但它比我预期的更糟糕......即使在 iOS5 上将 UISlider 设置为 NAN 一次,似乎永远破坏了该控件的实例,这令人惊讶,并且花了一点时间来追踪。

      【讨论】:

        猜你喜欢
        • 2021-11-03
        • 2022-08-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-18
        • 2011-11-05
        相关资源
        最近更新 更多