CGRectMake在横向模式下无法完美运行?

时间:2011-09-28 12:37:42

标签: iphone ios cocoa-touch ipad

当我在ipad的横向模式下绘制UIView时,它给出了错误的宽度和错误的高度,我已经提到如下

 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
  return (interfaceOrientation==UIInterfaceOrientationLandscapeRight);
}

rightView.view.frame = CGRectMake(598, 700, 60, 171);

但宽度非常高,身高很低......有什么帮助吗?

3 个答案:

答案 0 :(得分:0)

在横向模式下,由于框架位于其父视图的坐标系中,并且父视图应用了CGAffineTransform(以应用界面方向),因此反转了高度。

请参阅同时处理相关问题的this other question

答案 1 :(得分:0)

你可以设置框架。它会给你一个要求的结果。

    CGRectMake(self.view.size.width-426 ,self.view.size.height-100 , self.view.size.width-366, self.view.size.height-497);

答案 2 :(得分:0)

只需在下面写一行 rightView.view.frame = CGRectMake(598,700,171,60);