簡體   English   中英

設置AlertViewStyle時應用程序崩潰

[英]Application crash when setting alertviewstyle

我正在嘗試使用alertviewstyle使用來自用戶的文本輸入。 當我在不更改樣式的情況下顯示alertview ,它將起作用。

當我將樣式更改為UIAlertViewStylePlainTextInput此錯誤:

錯誤:地址不包含指向目標文件中某個部分的部分。

我正在使用以下代碼:

nameAlertView =
    [[UIAlertView alloc] initWithTitle:[langFile objectForKey:@"sequenceTitel"]
                               message:[langFile objectForKey:@"sequenceTitel"]
                              delegate:self
                     cancelButtonTitle:[langFile objectForKey:@"cancel"]
                     otherButtonTitles:[langFile objectForKey:@"save"], nil];

nameAlertView.alertViewStyle = UIAlertViewStylePlainTextInput;

[nameAlertView show];
[nameAlertView release];

編輯

我正在使用iOS 5.1,並且收到了調試器的以下反饋:

培訓工具(2332,0x3f080d98)malloc: * mmap(size = 1342177280)失敗(錯誤代碼= 12) 錯誤:無法分配區域* *在malloc_error_break中設置斷點進行調試


這很奇怪,因為有時在我認為完成相同的操作時它會起作用

在調試器中中斷時,您將發現對象是什么。 只需查找調用堆棧,您就會找到將其釋放(或釋放)的位置。 這將告訴您它是哪個對象。

設置斷點的最簡單方法是:

Goto Run -> Show -> Breakpoints (Alt-Command-B)
Scroll to the bottom of the list and add the symbol malloc_error_break

將部署目標設置為4.X時,我遇到了同樣的問題,因為僅ios5支持此樣式屬性。 即使您的設備是ios 5.1,也請確保“部署目標”為5.1。

顯示后不要立即釋放UIAlertView,而是在委托回調中釋放它。

我今天遇到了同樣的問題,我搜索了這個東西 ,它解決了我的問題,希望您能回答困惑。 這意味着,因為在設置alertview.alertviewstyle之前,您的鍵盤是打開的,所以在設置alertviewstyle之前我關閉鍵盤時會出現問題,這是正常的。 這是iOS 9之前的一個錯誤,iOS 9對其進行了修復。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM