iphone - 强制 UIImagePickerController 以横向模式拍摄视频

标签 iphone ios uiimagepickercontroller xamarin.ios

我有一个主要是纵向的 iPhone 应用程序需要拍摄一些视频,我想温和地鼓励(好吧,强制)用户以横向模式拍摄该视频。

我尝试创建一个 UIViewController 并覆盖 ShouldAutorotateToInterfaceOrientation 以返回 false,并在其 View 上使用适当的 CGAffineTransforms,但它没有任何效果-- 我假设是因为当您调用 PresentModalViewController 来显示 UIImagePickerController 时, View 不在画面中。控件始终显示在同一个位置,并且当我旋转手机时,切换到前置摄像头的控件仍然会四处移动。

有什么建议吗?我愿意接受确凿的证据证明这是不可能的,尽管我不确定我的老板是否会这样做。

最佳答案

尝试在您的 AppDelegate 中调用 UIDevice.CurrentDevice.BeginGeneratingDeviceOrientationNotifications()

然后在 UIImagePickerController 的 ViewDidLoad() 方法中,通过执行以下操作添加观察者:

public override void ViewDidLoad()
{
    base.ViewDidLoad();
    NSNotificationCenter.DefaultCenter.AddObserver("UIDeviceOrientationDidChangeNotification", DeviceRotated);
}

DeviceRotated 在哪里

private void DeviceRotated(NSNotification notification)
{
    button.Transform = CGAffineTransform.MakeRotation(1.5f);
}

关于iphone - 强制 UIImagePickerController 以横向模式拍摄视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4140493/

相关文章:

iphone - iOS 上的 WebP 图片格式

iphone - 如何在 iPhone 上创建时间线

android - 当我的移动应用程序向我的服务器报告它们的设备 token 时,我应该如何处理身份验证?

iphone - 如何撤消 SVN 上的更新

iphone - 是否可以以 60 fps 的速度生成视频并以 60 fps 的速度播放?

iphone - UIImagePickerController 不填满屏幕

ios - iphone ios 上的 swift 3 中的弹出窗口

iphone - 解析json嵌套对象和数组的组合

objective-c - 当点击覆盖中的按钮时,带有相机 OverlayView 的 UIImagePickerController 聚焦

ios - 使用视频类型打开 PhotoLibrary 无需压缩过程