繁体   English   中英

更改UIView的bounds属性不会影响其内容

[英]changing bounds property of UIView doesn't affect its content

我是iPhone编程的新手,我正在尝试理解框架和边界属性的工作原理。 在Interface构建器中,我创建了UIView ,其中我将UIImageView作为子项。 我使UIImageView比父视图更大。 并为父UIView设置'clip subview'属性为true,为子UIImageView设置为false。
当我以编程方式更改子UIImageView frame.origin属性时。 但是当我更改父UIView bounds.origin属性时,我什么也看不见。 可能我错误地理解了bounds的目的。

我该怎么做才能获得iPhone应用程序编程指南中描述的行为:

您可以在不更改其他两个属性的情况下更改边界原点。 执行此操作时,视图将显示您已识别的基础图像部分。 在图2-4(第56页)中,原始边界原点设置为(0.0,0.0)。 在图2-5中,该原点移动到(8.0,24.0)。因此,视图显示底层图像的不同部分。 但是,由于框架矩形没有改变,因此新内容显示在父视图内的同一位置。

提前致谢。 安德鲁

首先,在尝试更改其边界之前,请确保您具有对图像视图的正确引用。 检查它不是nil

其次,您可能需要更改矩形,然后在单独的语句中再次设置它,如下所示:

CGRect rect = imageView.bounds;
rect.origin = CGPointMake(whatever, whatever);
imageView.bounds = rect;

边界甚至可能不是你想要的。 我不知道你的引言在哪里,但听起来不对。 尝试使用图像视图的框架将其定位在其超视图中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM