UIScrollView中的小错误

时间:2012-10-11 01:32:08

标签: uiscrollview ios6 constraints frame

我终于能够通过约束和Autolayout更新我的应用程序了。但是,现在我有一些奇怪的行为。我的应用程序翻转到我有我的设置的页面,但是当我返回滚动视图中的分页是古怪的。它似乎在发射viewWillAppear时卡在页面之间。我记录了contentOffset。当错误发生时,它实际上报告当它尚未完全滚动时偏移量为0.000000。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

好的,我找到了一个解决我的问题的hacky解决方法。我仍然没有安装核心问题。

基本上,我只是将我对contentView的中心所做的更改还原。

- (void)viewDidLoad
{
    [super viewDidLoad];
    [_contentView addObserver:self forKeyPath:@"center" options:NSKeyValueObservingOptionNew context:nil];
}

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
    if (object == _contentView && [keyPath isEqualToString:@"center"]) {
        if (!_ignoreNextChange) {
            _ignoreNextChange = YES;
            _contentView.frame = CGRectMake(0, 0, _contentView.frame.size.width, _contentView.frame.size.height);
        }
        _ignoreNextChange = NO;
    }
}

答案 1 :(得分:1)

好吧,最后我决定将变量设置为scrollViewDidEndDecelerating上的UIScrollView偏移并返回viewWillAppear。我仍然对ScrollView中的图像有问题,但我将此归因于此时的约束。