修复UIView中自定义视图的位置

时间:2011-12-08 10:35:46

标签: ios uiview

我有一个自定义视图,其中drawRect中的一些绘图作为子视图添加到UIView.On中点击子视图我更改了基本视图的高度。这是通过 -

完成的
CGRect rect = self.bounds;
rect.size.height = 400.0;
self.bounds = rect;

这也重新定位了我不想要的自定义视图(将其设置到基本视图的顶部),子视图应该保持固定在UIView的底部。

自定义视图的Y位置设置为基本视图的高度 -

 y = self.bounds.size.height - 40.0;

这在第一次添加自定义控件时有效,但在基本视图更改高度时不起作用。 我为基本视图设置了self.autoresizesSubviews = NO;

如果我从基本视图中删除自定义视图并在高度更改后再次添加它,则不会显示任何内容,只是一个空白的基本视图。

将自定义视图的位置固定到基本视图底部的任何想法。

2 个答案:

答案 0 :(得分:0)

尝试使用

self.bounds = CGRectMake(0, 0, 320, 400);

它将从左上角到屏幕右侧的点,即初始点以下400像素。

您也可以尝试使用方法

-(void)layoutSubviews

我不记得正确的语法,但我很确定它是那样的。

希望有所帮助

答案 1 :(得分:0)

如何在该视图上触发 setNeedsDisplay 方法。