iphone/ipad - 使用 Autoresize 和 addSubview 出现问题
Posted
技术标签:
【中文标题】iphone/ipad - 使用 Autoresize 和 addSubview 出现问题【英文标题】:iphone/ipad - Trouble using Autoresize and addSubview 【发布时间】:2011-10-04 02:05:07 【问题描述】:我已经为这个问题阅读了几个小时的 *** 答案。请帮帮我。
我正在使用 addSubview 显示视图。我所有的 UIView 对象都是通过 xib 文件加载的。层次结构是 MainWindow.xib -> View1.xib -> View2.xib。每个都有一个控制器,它通过 initWithNibName: bundle: 加载 xib。层次结构中的每个视图都有在 IB 中选中的 Autoresize Subviews 属性。每个人都检查了他们的自动调整大小选项。 (又名小红箭头。)
当单击 View1 上的按钮时,使用 addSubview 将 View2 作为子视图添加到 View1。这在 iPhone 上运行良好。
我现在正在让我的应用程序在 iPad 上运行。我所有其他视图都可以正常工作并正确调整大小。但 View2 没有。这是因为在调用调整大小函数之前它不会被添加到 View1 中吗?如果是这样,我如何触发自动调整大小功能?我错过了什么?
如果这里不够详细,我很抱歉。我也很乐意回答调试问题。找了两天,还是觉得有点失落。
【问题讨论】:
【参考方案1】:将 View2 添加到 View1 的代码在哪里?你可能想做类似的事情
-(void)actionButtonPressed:(id)sender withEvent:(UIEvent*)e
self.vc2 = [[[ViewController2 alloc] initWithNibName:...] autorelease];
vc2.view.frame = self.view.bounds;
[self.view addSubview:vc2.view];
【讨论】:
哇。我让它变得比需要的困难得多。出于某种原因,我认为 autoResize 会在 addSubview 函数期间发生。我之前尝试过上述操作但没有成功,但直到将其添加到 View1 后才调整大小。感谢您帮助我重新思考和重新排序。 自动调整大小仅在视图被调整大小 时发生,如果视图没有窗口/超级视图/某些东西,有时似乎神秘地不会发生。当心!以上是关于iphone/ipad - 使用 Autoresize 和 addSubview 出现问题的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 UIPanGestureRecognizer 移动对象? iPhone/iPad