首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MPVolumeView定制问题

MPVolumeView定制问题
EN

Stack Overflow用户
提问于 2014-05-04 03:24:15
回答 1查看 385关注 0票数 1

我正在开发一个无线电应用程序,需要自定义音量跟踪器的颜色。

代码语言:javascript
复制
    myVolumeView = [[MPVolumeView alloc] initWithFrame: CGRectMake(26, 292, 268, 23)];

    [self.view addSubview: myVolumeView];
    for (id current in myVolumeView.subviews) {
        if ([current isKindOfClass:[UISlider class]]) {
            UISlider *volumeSlider = (UISlider *)current;
            volumeSlider.minimumTrackTintColor = [UIColor redColor];
            volumeSlider.maximumTrackTintColor = [UIColor lightGrayColor];
            //[volumeSlider setThumbImage:[UIImage imageNamed:@"volTrack.png"] forState:UIControlStateNormal];
        }
    }

如果我像这样运行代码,它会导致一个奇怪的bug:

但是如果我注释掉最大轨迹颜色,它可以工作(尽管没有自定义颜色)。

有什么补救措施吗?我运行的是7.1.1

EN

回答 1

Stack Overflow用户

发布于 2014-05-04 17:55:56

让我们试一试:

代码语言:javascript
复制
if ([current isKindOfClass:[UISlider class]]) {
     UISlider *volumeSlider = (UISlider *)current;
     volumeSlider.minimumTrackTintColor = [UIColor redColor];
     volumeSlider.maximumTrackTintColor = [UIColor lightGrayColor];
     [volumeSlider setThumbImage:[UIImage imageNamed:@"volTrack.png"] forState:UIControlStateNormal];

     // I think you should set these properties:
     [slider setMinimumTrackImage:[[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:filled ofType:@"png" inDirectory:@"MDAudioPlayer.bundle"]]stretchableImageWithLeftCapWidth:5 topCapHeight:3] forState:UIControlStateNormal];
     [slider setMaximumTrackImage:[[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:empty ofType:@"png" inDirectory:@"MDAudioPlayer.bundle"]] stretchableImageWithLeftCapWidth:5 topCapHeight:3] forState:UIControlStateNormal];
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23448839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档