如何在iOS 11.4上以编程方式更改卷

如何在iOS 11.4上以编程方式更改卷,第1张

概述以前,我使用这种方法以编程方式设置音量: MPVolumeView *volumeView = [[MPVolumeView alloc] init];UISlider *volumeViewSlider = nil;for (UIView *view in [volumeView subviews]){ if ([view.class.description isEqualToS 以前,我使用这种方法以编程方式设置音量:
MPVolumeVIEw *volumeVIEw = [[MPVolumeVIEw alloc] init];UiSlider *volumeVIEwSlIDer = nil;for (UIVIEw *vIEw in [volumeVIEw subvIEws]){    if ([vIEw.class.description isEqualToString:@"MPVolumeSlIDer"])    {        volumeVIEwSlIDer = (UiSlider *)vIEw;        break;    }}[volumeVIEwSlIDer setValue:0.5 animated:YES];[volumeVIEwSlIDer sendActionsForControlEvents:UIControlEventtouchUpInsIDe];

直到iOS 11.4它运行良好(即使在iOS 11.3上),但在iOS 11.4上却没有.体积值保持不变.有人可以帮助解决这个问题吗?谢谢.

解决方法 在一小段延迟后更改volumeVIEwSlIDer.value可以解决问题.
- (IBAction)increase:(ID)sender {  MPVolumeVIEw *volumeVIEw = [[MPVolumeVIEw alloc] init];  UiSlider *volumeVIEwSlIDer = nil;  for (UIVIEw *vIEw in volumeVIEw.subvIEws) {    if ([vIEw isKindOfClass:[UiSlider class]]) {      volumeVIEwSlIDer = (UiSlider *)vIEw;      break;    }  }  dispatch_after(dispatch_time(disPATCH_TIME_Now,(int64_t)(0.01 * NSEC_PER_SEC)),dispatch_get_main_queue(),^{    volumeVIEwSlIDer.value = 0.5f;  });}

Swift version

总结

以上是内存溢出为你收集整理的如何在iOS 11.4上以编程方式更改卷全部内容,希望文章能够帮你解决如何在iOS 11.4上以编程方式更改卷所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1096828.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存