2013-07-16 154 views
0

我正在向用户控制器添加自定义视图(MainComponentView)。现在在MainComponentView我还加入了一个自定义视图(FirstPartView)和FirstPartView的高度应该小于MainComponentView的高度。我的问题是,当我给较低的高度MainComponentViewFirstPartView高度,它仍然显示我的整个FirstPartView的看法。如何将正确的框架设置为自定义视图?

// MainComponentView 
self.aComponent = [[MainComponentView alloc] initWithFrame:CGRectMake(212, 0, 600, 550) 
              withStartDate:startDate 
                endDate:endDate]; 
[self.view addSubview:self.aComponent]; 

,并添加自定义视图MainComponentView

self.aFirPartView = [[FirPartView alloc] initWithFrame:CGRectMake(0, self.frame.origin.y, self.frame.size.width, HEIGHT_OF_COMPONENT1) withStartDate:startDate endDate:endDate]; 
[self addSubview:self.aFirPartView];` 
+0

您的代码请。 – Balu

+0

哦是的!!!一分钟..... – user007

+0

添加MainComponentView:self.aComponent = [[MainComponentView alloc] initWithFrame:CGRectMake(212,0,600,550)withStartDate:startDate endDate:endDate]; [self.view addSubview:self.aComponent];并在MainComponentView中添加自定义视图:self.aFirPartView = [[FirPartView alloc] initWithFrame:CGRectMake(0,self.frame.origin.y,self.frame.size.width,HEIGHT_OF_COMPONENT1)withStartDate:startDate endDate:endDate]; [self addSubview:self.aFirPartView]; – user007

回答

0

尝试:

self.aComponent.clipsToBounds = YES; 

告诉认为它不应该作出任何子视图这是外界的任何部分其框架。

+0

是的!正是温先生(Wain From Dark Night:D)...... – user007

0

子视图坐标是相对于上海华盈,而不是窗户,所以当你这样做:

self.aFirPartView = [[FirPartView alloc] initWithFrame:CGRectMake(0, self.frame.origin.y, self.frame.size.width, HEIGHT_OF_COMPONENT1) withStartDate:startDate endDate:endDate]; 
[self addSubview:self.aFirPartView];` 

您创建视图是由MainComponentView从屏幕顶部的距离向下偏移。

尝试使用此框架值来代替:

CGRectMake(0, 0, self.bounds.size.width, HEIGHT_OF_COMPONENT1) 

这会在你的MainComponentView的左上角的位置的子视图,用指定的宽度和高度。

相关问题