小编Glo*_*mad的帖子

30
推荐指数
2
解决办法
3049
查看次数

UIWindow addSubview上的偏移量

我有一个基于UITabBar的应用程序,工作正常.在某些情况下,我会显示不同的UIViewController.现在的问题是,我必须调整测试笔尖的框架(并且只有测试笔尖!)才能正确显示.(否则视图位于状态栏下方).

- (void)applicationDidFinishLaunching:(UIApplication *)application
{
    if (condition) {

        UIViewController *vc = [[UIViewController alloc] initWithNibName:@"Test" bundle:nil];

        // FIXME this should NOT be required
        CGRect r = vc.view.frame;
        r.origin.y += 20;
        vc.view.frame = r;

        [window addSubview:vc.view];
        [window makeKeyAndVisible];
        return;
    }

    [window addSubview:tabViewController.view];
    [window makeKeyAndVisible];
}
Run Code Online (Sandbox Code Playgroud)

那么测试笔尖可能有问题吗?不能.测试笔尖在一个干净的新项目中按照需要工作.一个新的干净笔尖显示相同的症状.所以MainWindow笔尖必定有问题,对吧?但是UITabBarController显示得很好.

我有点困惑,这里没有想法.有什么建议如何跟踪这个?

iphone cocoa-touch

26
推荐指数
1
解决办法
1万
查看次数

Android MediaPlayer与iOS AVPlayer和AVSynchronized层等动画同步

我的目的是将某些图像叠加在视频之上,以便审查色情材料.问题是视频不是由我托管的.我的iOS/Android应用程序只是从不同的服务器上获取视频,同时显示它们必须覆盖图像以审查任何敏感材料.让我们假设,我不知何故神奇地从我自己的服务器获取一些元数据,它告诉我需要审查什么.

在iOS中,我通过使用AVPlayer运行视频以及出现在需要审查的视频的任何部分上的图像动画来实现此目标.动画使用AVSynchronized图层与AVPlayer同步,该图层自动将视频的每个帧与动画的相关帧同步.

现在,我需要在Android中做同样的事情.我制作了一个变换动画,用于转换隐藏被删除内容的叠加图像.我在当前持续时间内不断轮询MediaPlayer并使用fps逼近当前帧并尝试将动画与视频同步.

这个问题是整个事情都有很多抖动.如果动画以某种方式落后于视频,即使对于几帧也是如此,我需要审查的内容显示出这样做的全部意义.

简而言之,我需要将每个动画帧与具有相同索引的视频帧同步.有没有类似于我可以用来实现这个AVSynchronized层的东西?

animation android media-player avplayer

8
推荐指数
0
解决办法
553
查看次数

这两个Objective-C消息表达式是否等同于内存?

以下两个消息表达式是否会导致同一对象中的保留计数增加?

例1:

iVar = [Foo aClassMethodInFoo];
[iVar retain];
Run Code Online (Sandbox Code Playgroud)

例2:

iVar = [[Foo aClassMethodInFoo] retain];
Run Code Online (Sandbox Code Playgroud)

示例1是明确的,因为它是保留计数增加的iVar实例.示例2似乎表明它从中返回的对象的保留计数[Foo aClassMethodInFoo]增加了.如果是这样,那么假设aClassMethodInFoo是一种方便的方法,我会释放哪个对象以平衡先前的"保留"以便不泄漏内存?

memory-leaks memory-management objective-c

2
推荐指数
1
解决办法
51
查看次数