2

我的应用程序用于UITabBarController显示 3 个选项卡,每个选项卡都有一个UINavigationController管理所有视图控制器的选项卡。

我想要做的是添加一个将“浮动”在所有视图之上的视图。

例如,假设我想在屏幕的左上角显示我的徽标,并且无论用户导航到哪里,无论他在哪个女巫标签上,我都希望这个徽标留在屏幕上。

我想我需要将此徽标添加到UIWindow? 我只是想知道这样做的最佳做法是什么?

4

2 回答 2

0

除了导航控制器或根控制器之外,不要向窗口添加任何内容。相信我,如果你这样做,你会遇到内存问题,因为 Window 没有发布,但 View Controller 是。

将该浮动视图添加到每个视图控制器,并将其作为子视图列表中的最后一项。您可以在 IB 中设计一次或以编程方式设计它并在每个屏幕上复制它。这是我一直采用的方法,您建议的想法不会为您节省任何时间。

于 2013-05-27T11:02:46.243 回答
0

确实,在应用程序启动时将其放置在窗口中是一个好地方。例如

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    //...
    //... Setup root View Controller

    UIView *extraView = [[UIView alloc] initWithFrame:CGRectMake(0,0,10,20)];
    [extraView setBackgroundColor: [UIColor greenColor]];    

    [self.window addSubView: extraView];

    return YES;
}
于 2013-05-27T11:03:42.213 回答