在运行时调整iPhone上的UIView大小

时间:2010-07-29 06:28:50

标签: iphone uiview runtime resize iad

每当iAd从顶部向下滚动时,我都会尝试调整应用视图的大小。 问题是在运行时,当我设置相关视图的调整大小的帧大小时,调整大小不会发生9因此iAd在前50个垂直像素的顶部绘制。)

如果我在设计时设置UIView大小,那么我会看到视图已调整大小(当我运行应用程序时)。

那么我在运行时做错了什么导致我的调整大小没有发生?

我的控制器NIB的结构如下所示:

> > View

>   > View (associated with IB 'contentView')

>     > CustomView (UIView)

>        - ScrollView

>        - Toolbar (top)

>        - Toolbar (bottom)

在代码中,adBannerView的添加方式如下: [self.view addSubView:adBannerView];

conteView的origin.y和size.height是即时更新(使y = 50,高度=原始高度 - 50)。这应该缩小它,以便有足够的空间显示顶部的横幅(高度为50像素)。

2 个答案:

答案 0 :(得分:0)

你确定视图不是零吗?你在Interface Builder中挂了吗?如果您在视图上调用 -setFrame 并且没有任何操作,则视图可能无效。

答案 1 :(得分:0)

我解决了我的问题,但是以一种解决方法。 我认为问题是我的视图布局树非常复杂。例如,我在自定义UIView中有一个scrollviewer。 scrollviewer在运行时添加了UIView作为其内容。最重要的是,我试图调整各种观点。

但出于某种原因,这些观点从来没有成功(它始终是最合理的)。