6 iphone
我是iPhone编程的新手,我正在尝试理解框架和边界属性的工作原理.在"界面"构建器中,我创建UIView了我UIImageView作为孩子放置的位置.我UIImageView比父母的观点做得更大.并为父UIView设置'clip subview'属性为true,为子UIImageView设置为false.
当我frame.origin以UIImageView编程方式更改子项的属性时.但当我改变bounds.origin父母的财产时,UIView我什么也看不见.可能我错误地理解了目的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;
Run Code Online (Sandbox Code Playgroud)
界限甚至可能不是你想要的。我不知道你从哪里得到这句话,但听起来不太对。尝试使用图像视图的框架将其放置在其超级视图中。