我有一个UIScrollView,我在其中添加了一个子视图,它是一个TimeLineView(一个UIView)。用于显示;最初我只是做了同样的事情,TimeLineView显示没有任何问题。但现在我想在UIScrollView上方有一个UIView,我可以在其中显示有关时间轴的一些信息。
我是否需要降低UIScrollView的高度,以便UIView适应它上面的空间?如果是的话,我该怎么做?
如果还有其他方式......请告诉我。 我的所有初始实现如下:
in .h
@property (nonatomic, readonly) UIScrollView *scrollView;
@property (nonatomic, readonly) TimeLineView *timelineView;
in .m
@synthesize scrollView = scrollView;
@synthesize timelineView = timelineView;
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
[self prepareCustomView];
}
return self;
}
- (id)initWithCoder:(NSCoder *)decoder
{
self = [super initWithCoder:decoder];
if (self) {
[self prepareCustomView];
}
return self;
}
- (void)prepareCustomView {
// Initialization code
// Add main scroll view
[self addSubview:self.scrollView];
// Add timeline view inside scrollview
[self.scrollView addSubview:self.timelineView];
}
- (UIScrollView *)scrollView
{
if (!scrollView) {
scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0.0f, TOP_BAR_HEIGHT, self.bounds.size.width, self.bounds.size.height-TOP_BAR_HEIGHT-FOOTER_HEIGHT)];
scrollView.contentSize = CGSizeMake(self.bounds.size.width,TIMELINE_HEIGHT);
scrollView.scrollEnabled = TRUE;
scrollView.backgroundColor =[UIColor whiteColor];
scrollView.alwaysBounceVertical = TRUE;
}
return scrollView;
}
提前感谢您的帮助。
答案 0 :(得分:0)
是的,您必须更改y轴并将UWiew的高度降低Uview的高度。如果滚动视图位于UIView下方,则必须按如下方式更改滚动视图的框架:
scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0.0f,UIViewFrame.size.height + UIViewFrame.origin.y,self.bounds.size.width,self.bounds.size.height-TOP_BAR_HEIGHT-FOOTER_HEIGHT-UIViewFrame .size.height)];
其中UIViewFrame是你的UIView的框架。