我有一个view
包含 aTableView
和UIImage
a 的 a UIButton
。在UIButton
IB 中配置并定位如下:self.camButton.frame = CGRectMake(0, 410,127,49);
我的问题是UIButton
当我弹回第一个ViewController
. 在第一次加载时,它的位置很好,但是当我回到ViewController
按钮时,它位于视图中大约 20 像素的位置。我正在尝试记录按钮的位置,所以我进去了viewWillAppear
:
NSLog(@"Bug Fixes: %f",self.camButton.frame.origin.y);
NSLog(@"Bug Fixes: %f",self.view.frame.origin.y);
但我总是在第一次加载时得到 410 和 0,当按钮放错位置时。我正在玩View
其他的位置ViewControllers
(例如,在显示键盘时我向上推view
),但我认为这不是导致它的原因,因为当我返回第一个位置时视图保持在同一位置ViewController
问问题
97 次
4 回答
0
如果您启用了自动布局,则查找约束。
第二种方法是使用 initWithFrame: 每当您返回该视图时。
于 2013-01-22T09:06:26.500 回答
0
你需要设置autoresizingMask
self.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
有关更多信息,请查看此链接
于 2013-01-22T09:06:58.177 回答
0
把你的代码
self.camButton.frame = CGRectMake(0, 410,127,49);
在 -(void)viewWillAppear:(BOOL)animated
于 2013-01-22T09:15:07.650 回答
0
您在哪里设置按钮的框架(loadview、viewwillappear 等)以及在哪里分配按钮?您是否取消了dealloc中的按钮?尝试设置 UIViewAutoresizingFlexibleTopMaring | UIViewAutoresizingFlexibleBottomMargin。
于 2013-01-22T09:21:31.693 回答