2012-08-03 17 views
0

我有一個與UIAlertView相關的問題。我創建了一個包含正文消息和兩個確定和取消按鈕的提醒。 當我顯示alertWindow時,按鈕使其位置在警報窗口之外,並且不可訪問。當方向改變時它會變得正常。UIAlertView按鈕在iPad的警報窗口之外?

我試着改變alertWindow的大小,但問題存在。

這裏是我的代碼

UIAlertView *errorAlert=[[UIAlertView alloc]initWithTitle:errorAlertTitle message:errorAlertMessage delegate:self cancelButtonTitle:errorAlertClose otherButtonTitles:@"Reload", nil]; 
    errorAlert.tag=2; 
    errorAlert.frame = CGRectMake(0,0,500,600); 

    [errorAlert show]; 
    [errorAlert release]; 

enter image description here

任何解決方案?

回答

1

,你的意思是UIAlertView有文本和按鈕的可見部分,對吧?你認爲你在代碼中設置了「警告窗口」的框架嗎?你是否設置了一個透明阻止視圖的框架,阻止用戶與UI的其餘部分進行交互幷包含「警告窗口」? The view hierarchy of UIAlertView is private,所以我們無法確定它是如何構建的,但是你可能會操縱錯誤的東西。請注意,該文檔還警告不要干擾UIAlertView視圖層次結構,因此您可能不希望爲UIAlertView設置任何視圖屬性,如框架。

如果你真的想修改的「警報窗口」,您可以:

  1. 通過編寫代碼通過他們走,並記錄有用的信息(幀,類型等分析警報視圖的子視圖)。這可能會告訴你實際上想要操作的子視圖。

然後

  1. 使用callbacks in UIAlertViewDelegate操縱UIAlertView中後,警報窗口已建成並即將成爲可見。

但也許你想看看UIActionSheetUIPopoverController如果UIAlertView自動造型是不是爲你工作?

0

您的要求,我只是使用actionsheet但對於你的問題做到這一點:

添加以下代碼:當你寫 「警告窗口」

errorAlert.frame = CGRectMake(0,0,500,600); 

[errorAlert show];