代码之家  ›  专栏  ›  技术社区  ›  Thomas Clayson

ipad上的横向滚动视图内容大小有问题

  •  1
  • Thomas Clayson  · 技术社区  · 14 年前

    [methodPanes setContentSize:CGSizeMake(numberOfPages*methodPanes.frame.size.width, 100)];
    

    方法窗格是相对于 self.view .

    methodPanes.frame.size.width 我明白了 648个

    然后我有一个按钮,当我点击它时它会记录 methodPanes.frame.size.width方法窗格 924个

    由于某种原因,我假设ScLoVIEW加载到648的宽度,然后自动缩小到视图宽度(它设置为UIViewAutoresizingFlexibleWidth,当iPad旋转时重新正确地调整大小)。

    numberOfPages x its frame width ,但在viewDidLoad中,它给了我错误的methodPanes帧宽度大小,这意味着我的content size太小,意味着我的所有内容都无法显示。

    所以。。。。。我该怎么解决?是否有一个函数在加载完所有UI组件并停止移动后运行?或者我可以对methodPanes进行“检查”,看看它的宽度是否发生了变化,然后相应地调整内容大小吗?

    谢谢

    1 回复  |  直到 14 年前
        1
  •  4
  •   Chris Miles    13 年前

    获取允许运行循环后的宽度。届时视图尺寸将根据方向进行更新。这通常就足够了:

    - (void)adjustContentSize {
        [methodPanes setContentSize:CGSizeMake(numberOfPages*methodPanes.frame.size.width, 100)];
    }
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        [self performSelector:@selector(adjustContentSize) withObject:nil afterDelay:0.0];
    }