首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >UITabBarController显示屏

UITabBarController显示屏
EN

Stack Overflow用户
提问于 2013-04-25 20:29:22
回答 4查看 1.7K关注 0票数 0

我是iOS开发的新手。我正在开发一个使用标签栏控制器的应用程序。我正在以编程方式设置选项卡栏控制器的框架,但是当我切换到iPhone 5时,选项卡栏项目和主视图之间会产生空白。以下是iPhone 5模拟器上的应用程序的屏幕截图。

下面是我为UITabBarController设置框架的代码行

代码语言:javascript
运行
复制
[rootTabBarController.view setFrame:CGRectMake(0,-20,320, 480)];
EN

Stack Overflow用户

发布于 2013-04-25 20:35:08

just.dont.do.it (不设置帧)!

最简单、最干净的技术是:

YourAppDelegate.h:

代码语言:javascript
运行
复制
@property(nonatomic,retain) UITabBarController * tabBarController;

YourAppDelegate.m:

代码语言:javascript
运行
复制
@synthesize tabBarController;
#pragma mark -
#pragma mark Application lifecycle

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];

self.tabBarController = [[[UITabBarController alloc] init] autorelease];

UINavigationController      *viewController1 = [[[UINavigationController alloc] initWithRootViewController:[[[UIViewController alloc] init] autorelease]] autorelease];

UINavigationController      *viewController2 = [[[UINavigationController alloc] initWithRootViewController:[[[UIViewController alloc] init] autorelease]] autorelease];

self.tabBarController.viewControllers = @[viewController1, viewController2];
self.tabBarController.customizableViewControllers = nil;

self.window.rootViewController = self.tabBarController;
[self.window makeKeyAndVisible];


return YES;

}

一切都会好起来的。框架,旋转,自动调整大小,在iPhone,iPad等。

顺便说一句,你可以在Xcode中用"Tab Bar application“模板创建一个新项目,看看Apple是怎么做的

然后..。(建议,将来可以帮助你) UITabBarController必须位于视图层次结构的顶部(直接在UIWindow上)才能正确旋转等,我的示例代码包含了它(它可以为你节省一些将来的时间)

票数 0
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16214819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档