UIScrollView子视图之间的差距

时间:2012-07-07 21:56:21

标签: iphone uiscrollview subviews gaps-in-visuals

我有两个UIScrollView子视图。一个是textView,另一个是tableView。我根据内容使textview的高度变得灵活,但我有一个问题。如果textview中的文本(解析数据)很小,则textview和tableview之间存在很大差距。或者如果文本太大,那么它将覆盖tableview。无论文本视图的内容量多少,如何在textview和tableview之间保持相同的差距?这一切都在IB中完成。 感谢。

2 个答案:

答案 0 :(得分:2)

您必须动态处理textview和tableview位置,就像文本视图高度和y轴一样 y轴10;身高40; 现在在tableview setframe中:cgrectmake(你的X坐标,textview.frame.size.height + 20)

所以如果你的textview高度是60而不是tableview,那么它总是在textview和tableview之间显示相同的差异y点是60 + 20

答案 1 :(得分:0)

- (void)loadView 
{    
    CGRect pagingScrollViewFrame = [self frameForPagingScrollView];
    pagingScrollView = [[UIScrollView alloc] initWithFrame:pagingScrollViewFrame];
    pagingScrollView.pagingEnabled = YES;
    pagingScrollView.backgroundColor = [UIColor blackColor];
    pagingScrollView.showsVerticalScrollIndicator = NO;
    pagingScrollView.showsHorizontalScrollIndicator = NO;
    pagingScrollView.contentSize = CGSizeMake(pagingScrollViewFrame.size.width * [self imageCount],
                                              pagingScrollViewFrame.size.height);
    pagingScrollView.delegate = self;
    self.view = pagingScrollView;

}

- (CGRect)frameForPagingScrollView {
    CGRect frame = [[UIScreen mainScreen] bounds];
    frame.origin.x -= PADDING;
    frame.size.width += (2 * PADDING);
    return frame;
}

- (CGRect)frameForPageAtIndex:(NSUInteger)index {
    CGRect pagingScrollViewFrame = [self frameForPagingScrollView];

    CGRect pageFrame = pagingScrollViewFrame;
    pageFrame.size.width -= (2 * PADDING);
    pageFrame.origin.x = (pagingScrollViewFrame.size.width * index) + PADDING;
    return pageFrame;
}