相关疑难解决方法(0)

为什么在ViewDidLayoutSubviews中没有更新UIView的框架?

我正在尝试更新UIView其中包含按钮和标签的框架.我想在更新它viewDidLayoutSubviews(我也试过viewDidLoad,viewWillAppear,viewDidAppear...).我想改变视图的y位置(origin.y).NSLogs说我的原始y位置是334,并且在更改之后,它是100.但是,在我看来,位置不会改变.我已经检查过故事板中的视图已连接.我究竟做错了什么?

-(void)viewDidLayoutSubviews
{
    [super viewDidLayoutSubviews];
    CGRect theFrame  = [self.bottomView frame];
    NSLog(@"Y position bottomview: %f", self.bottomView.frame.origin.y);

    if([[UIScreen mainScreen] bounds].size.height == 568) //iPhone 4inch
    {
       // NSLog(@"iphone5");
    }
    else{
       // NSLog(@"iphone4");
        theFrame .origin.y =  100;
    }

    self.bottomView.frame = theFrame;
    NSLog(@"Y position bottomview after changing it: %f", self.bottomView.frame.origin.y);
    [self.view layoutIfNeeded];
}
Run Code Online (Sandbox Code Playgroud)

runtime objective-c frame uiview ios

11
推荐指数
3
解决办法
2万
查看次数

如何在Swift中检测并应用横向方向到AVCaptureVideoPreviewLayer?

我基本上是在回答这个问题AVCaptureVideoPreviewLayer方向 -除了在Swift中需要景观.

我的目标是iOS 8,而AVCaptureVideoPreviewLayer似乎没有setVideoOrientation功能.

我应该如何检测方向已更改,并正确旋转AVCaptureVideoPreviewLayer?

landscape orientation swift ios8

5
推荐指数
1
解决办法
4007
查看次数

AVCAPTURE 图像方向

在此处输入图片说明我有一个允许用户拍照的视图控制器。我将 avcapture 边界设置为屏幕上视图的边界。

在此视图上方,我有一个集合视图。因此用户可以捕获多张图片,然后将它们添加到上面的集合视图中。

我在上面的预览中出现正确的方向时遇到了问题。

代码如下:

@IBOutlet weak var imagePreviews: UICollectionView!
@IBOutlet weak var imgPreview: UIView!

var session: AVCaptureSession?
var stillImageOutput: AVCaptureStillImageOutput?
var videoPreviewLayer: AVCaptureVideoPreviewLayer?
var images: [UIImage] = [UIImage]()

var isLandscapeLeft     : Bool = false
var isLandscapeRight    : Bool = false
var isPortrait          : Bool = false
var isPortraitUpsideDown: Bool = false

@IBAction func capture(_ sender: UIButton)
    {
    if let videoConnection = stillImageOutput?.connection(withMediaType: AVMediaTypeVideo)
            {
                stillImageOutput?.captureStillImageAsynchronously(from: videoConnection, completionHandler: { (sampleBuffer, error) in
                    if sampleBuffer != nil {
                        if let …
Run Code Online (Sandbox Code Playgroud)

uiimage cgimage ios avcapturesession swift

4
推荐指数
1
解决办法
1772
查看次数