亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

UIViewController返回無效框架?

UIViewController返回無效框架?

iOS
縹緲止盈 2019-11-05 15:31:59
當我在landscape模式下啟動ViewController時(調用viewDidLoad之后),我打印出幀,這反而給了我縱向模式的幀大小。這有什么建議嗎?- (void)viewDidLoad{   [super viewDidLoad];   NSLog(@"%@", NSStringFromCGRect(self.view.frame));   // Result is (0, 0 , 768, 1024)}
查看完整描述

3 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

這是一個干凈的解決方案。


我遇到了同樣的問題,因此我堅持在frame整個應用程序中使用。我不想為根視圖控制器設置例外。我注意到根視圖控制器frame顯示的是縱向尺寸,但是所有子視圖的橫向尺寸都正確。


由于只有根視圖控制器的行為有所不同,因此我們可以將標準的空白視圖控制器設置為根視圖控制器,并在其中添加自定義視圖控制器。(下面的代碼。)


然后,您可以frame在自定義視圖控制器中按預期使用。


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

{

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

    // Override point for customization after application launch.


    self.window.rootViewController = [[UIViewController alloc] init];


    [self.window makeKeyAndVisible];


    self.viewController = [[ViewController alloc] initWithNibName:nil bundle:nil];

    [self.window.rootViewController addChildViewController:self.viewController];

    [self.window.rootViewController.view addSubview:self.viewController.view];


    return YES;

}


查看完整回答
反對 回復 2019-11-05
  • 3 回答
  • 0 關注
  • 455 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號