2012-10-24 40 views
0

下的UIWebView didFailWithError,我創建一個UIButton並將其添加到視圖:的UIButton UIWebView的錯誤

UIButton *refreshButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
... 
.... 
[self.imageView addSubview:refreshButton]; 

當按鈕被點擊我要求webView的重新加載指定的URL。

這個didFailWithError方法完成後,UIButton會發生什麼變化,它會自動發佈。

那麼我是否正確地說,如果在重新加載後再次捕獲到didFailWithError,則必須從頭重新創建UIButton。

而且,我如何從我的視圖中刪除的UIButton在webViewDidFinishLoad

[refreshButton removefromsuperview] 

感謝

回答

0

這didFailWithError方法結束後發生了什麼UIButton的,是自動釋放。

的按鈕在那裏停留,如果你不刪除或按鈕的上海華...

我會再是正確的說法UIButton的必須,如果重裝失敗一次從頭重建更多。

實際上,如果你的self.imageView被卸載或刪除,或明確的按鈕,這隻會是必要的......

此外,我怎麼會從我的視圖中刪除的UIButton在webViewDidFinishLoad

 [refreshButton removefromsuperview] 

這是正確的,但你應該在你的類中定義爲一個屬性refreshButton(否則它會在012局部變量,你不能從其他方法引用它)。

可能由於該按鈕會觸發重新加載,因此您也可以在webViewDidStartLoad:中將其刪除。

+0

所以UIButton不會被重新創建,如果它已經存在? –

+0

按鈕**會在您的代碼中重新創建**,因爲每次輸入'didFailWithError'時都會創建一個新的按鈕。這是正確的,但你必須刪除它也爲了能夠正常工作並且沒有內存泄漏。 – sergio