我正在尝试在Interface Builder中创建一个UIView,向用户显示包含一些文本的两个框。这个UIView应该支持横向和纵向模式。
在纵向方向时,两个框应水平居中并且彼此相对。如下图所示: Portrait Mode http://img176.imageshack.us/img176/5899/screenshot20100403at709.png
但是在横向时,它应该显示两个框垂直居中并排并排。如下图所示: Landscape Mode http://img40.imageshack.us/img40/1669/screenshot20100403at728.png
这是否可以仅使用自动调整选项(或任何其他IB选项),或者我是否必须在方向更改事件的代码中重新布局视图?我宁愿只使用IB。
我尝试锁定顶部框的顶部和左边距并锁定底部框的底部和右边距。但问题是,为了使它工作,我还需要缩小两个框,因为一个人从纵向变为横向,否则它们会重叠。
答案 0 :(得分:1)
我会制作两个视图并使用相同的模型。我发现这大大简化了我的代码。但是,如果你坚持使用一个视图,只需将它们放在旋转上即可。
答案 1 :(得分:1)
我所做的是由代码完成的.. 在 willRotateToInterfaceOrientation:duration:方法调用中,我将重新绘制视图的中心点..
它对我有用:)