如何使用音量按钮用自定义相机拍照?

时间:2015-12-23 18:02:24

标签: ios camera avfoundation volume

我希望如此,当用户按下任一音量按钮时,应用会响应此操作并拍摄照片。

我已经完成了与此类似的操作,因为我添加了通知,当按下音量按钮时,我将其链接以执行拍摄照片的方法,但音量弹出窗口仍会显示。我怎么能像Snapchat在拍照时暂时禁用音量按钮?

这是我到目前为止的代码:

视图确实已加载

  [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(volumeChanged:)
                                             name:@"AVSystemController_SystemVolumeDidChangeNotification"
                                           object:nil];

方法

-(IBAction)volumeChanged:(id)sender{

[self takePhotoFromDevice:nil];

}

1 个答案:

答案 0 :(得分:0)

显示MPVolumeView时,系统音量叠加被抑制。 MPVolumeView是一个音量滑块 - 想想Apple Music,Spotify或类似的。

您可以添加一个作为子视图,但将其放置在屏幕外的某个位置:

@import MediaPlayer;

// In viewDidLoad
MPVolumeView *volumeView = [[MPVolumeView alloc] initWithFrame: CGRectMake(-100, -100, 0, 0)];
[self addSubview:volumeView];

唯一需要注意的是,如果用户选择使用“设置”中的按钮选择更改铃声音量,则会显示铃声弹出窗口。