2013-07-19 71 views
1

在我的應用程序中,用戶可以創建一個新文件。我使用帶有UIAlertViewStylePlainTextInput風格的UIAlertView來提示用戶輸入新文件的名稱。當然,我想確保在文本字段中輸入的文件名不存在。是否可以動態更改UIAlertView的消息?

所以每當用戶我想測試,如果使用該名稱的文件存在並更改警報視圖中的文本字段如果是通過設置警報視圖的消息通知用戶:

alertView.message = @"File exists! Please enter a different name."; 

在所有其他情況下,如果具有該名稱的文件不存在,我根本不想顯示消息。我已經試過幾件事情,但它似乎是實現這一目標的唯一途徑是在後者的情況下,使用空格字符:

if (fileExists) { 
    alertView.message = @"File exists! Please enter a different name."; 
} else { 
    alertView.message = @" "; 
} 

這裏的缺點是,警報視圖將顯示在大多數情況下,一個空行(當沒有這樣的名字存在時),我想避免這種情況。我怎樣才能做到這一點? 或者有另一種更好的方式來通知用戶?

回答

1

創建alertView

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Alert" message:[self getAlert] delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
    [alertView show]; 

getAlert

- (NSString *)getAlert { 
    if(true) { 
     return @"String 1"; 
    } else { 
     return @"String 2"; 
    } 
    return @"null"; 
} 

我們調用一個方法來獲得字符串,並以這個方法我們可以創建條件語句,看看我們想要的字符串使用。

+0

動畫看起來像在第一非常簡潔的解決方案調整alertView幀。問題是:我想根據警報視圖的文本字段內容更改警報視圖的消息。當我在alert視圖的init方法中使用getAlert方法時,alert視圖尚未初始化,因此無法將alert視圖的文本字段傳遞給alert視圖方法。 – Mischa

+0

@Mischa哦......我完全誤讀了你的問題,讓我想出一個編輯。 –

相關問題