ui查看尺寸/位置与iPhone不同,在iPad上不起作用
我有一个UIView,它的大小宽度=320px高度=40px,我想在底部显示它,看起来像一个标签栏 我使用以下代码来实现这一点,它在iPhone上运行良好。但当我尝试iPad模拟器时,屏幕上的任何地方都不会出现视图ui查看尺寸/位置与iPhone不同,在iPad上不起作用,iphone,ios,ipad,uiview,Iphone,Ios,Ipad,Uiview,我有一个UIView,它的大小宽度=320px高度=40px,我想在底部显示它,看起来像一个标签栏 我使用以下代码来实现这一点,它在iPhone上运行良好。但当我尝试iPad模拟器时,屏幕上的任何地方都不会出现视图 buttonsView.frame=CGRectMake( 0, self.view.frame.size.height - buttonsView.fra
buttonsView.frame=CGRectMake(
0,
self.view.frame.size.height - buttonsView.frame.size.height,
self.view.frame.size.width,
buttonsView.frame.size.height );
这会将视图拉伸到屏幕的宽度,但保持其原始高度
我怎样才能让这个节目也在我的iPad上播出呢
[更新]
这发生在我的viewDidLoad
中
我现在有这个NSLog:
NSLog(@"buttonsView Width: \t%g\t%g\tHeight:\t%g\t%g",self.view.frame.size.width, buttonsView.frame.size.width, self.view.frame.size.height, buttonsView.frame.size.height);
有输出:iPhone: 按钮视图宽度:320高度:460 40 iPad: 按钮视图宽度:768 768高度:1004 40 我还在页面顶部创建了另一个类似这样的视图,效果很好:
dataView.frame=CGRectMake(
0,
0,
self.view.frame.size.width,
dataView.frame.size.height);
您是否查看过(使用断点或NSLog
)您在CGRectMake
调用中输入的值,就像一种“健全性检查”
谢谢你的信息。我的下一个想法是,在
viewDidLoad
和viewwillbeen
之间,操作系统正在改变某些东西。也许可以尝试将代码移动到视图将出现
,以确保您使用的帧将是将显示的帧。更深入地解释它。您是否查看了(使用断点或NSLog
)您在CGRectMake
调用中输入的值,就像一种“健全性检查”
谢谢你的信息。我的下一个想法是,在
viewDidLoad
和viewwillbeen
之间,操作系统正在改变某些东西。也许可以尝试将代码移动到视图将出现
,以确保您使用的帧将是将显示的帧。更深入地解释它。发生这种情况是因为为UIView设置了自动调整大小的
要修复此问题,请设置自动调整大小
,将其绑定到左上角。这样,无论何时更改帧,它都是相对于左上角的像素的。之所以发生这种情况,是因为为UIView设置了自动调整大小的
要修复此问题,请设置自动调整大小
,将其绑定到左上角。这样,无论何时更改帧,它都是相对于左上角像素的。何时调用此代码?在init
中,viewDidLoad
,视图将出现
,等等?何时调用此代码?在init
中,viewDidLoad
,视图将出现
,等等?因此您可以使用gdb打印出值,作为NSLOG的替代方法。是否删除了我的编辑?否则我会发布不同的答案…?删除你的编辑?我不知道你在说什么。啊,好了,其他一些版主必须有(它正在等待批准),这样你可以使用gdb打印出值,作为NSLOG的替代。你删除了我的编辑吗?否则我会发布不同的答案…?删除你的编辑?我不知道你在说什么。啊,好了,一定是其他主持人(正在等待批准)