0

我已将 UIWebView 对象实现为自定义 UIView ( TSAlertView )。我的 UIWebView 位于 UIView 的中间,作为子视图。

当我旋转 iOS 设备屏幕时,UIWebView 对象会在旧屏幕上重绘,而不会删除旧屏幕。当屏幕旋转时,这个自定义 UIView 的所有其他元素都会被销毁并重绘。

我想我一定错过了某种释放资源或从视图中删除 UIWebView 的过程。我尝试在 UIWebView 的声明中添加“自动释放”,但无济于事。我想知道这是否是我在创建 UIWebView 的方式上所做的简单疏忽的常见症状?

这似乎是一个简单的情况,即在每次旋转时重绘它之前不告诉 UIWebView 对象它应该销毁自己 - 但我不知道我该怎么做......

任何智慧都感激地接受。

4

1 回答 1

0

理想情况下,旋转时您不应再次创建视图。相反,您可以适当地重新排列代表中的框架。在您的情况下,您可能会UIWebView再次创建一个,这应该避免。取而代之的是,您可以将其保留为类级别参数(在 .h 文件中声明)并在委托方法中调整框架以进行旋转。另请注意,release/autorelease不会从超级视图中删除您的视图。您需要调用removeFromSuperview方法来实现这一点。

检查此视图调整大小和布局处理

于 2012-10-24T23:07:32.353 回答