2014-07-05 47 views
0

我想在UIAlertViewmessage中顯示如下內容:SampleUser poked you.,但實際上我收到錯誤。我知道如何用一個簡單的字符串做到這一點,我不知道如何用一個包含另一個字符串的字符串來做到這一點。將NSString傳遞到UIAlertview的郵件內容

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Poke" message:@"%@ poked you.", self.senderString delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:@"No", nil]; 
[alertView show]; 
+2

「但實際上我得到的錯誤」 - 我們都非常抱歉聽到。 –

+0

@HotLicks我認爲在這種情況下,將錯誤命名並不重要,因爲問題很明顯。 – rihe

+1

@ vv88雖然我同意問題很明顯,但指定錯誤絕不應被視爲無關緊要。如果提問者知道錯誤是無關緊要的,那麼提問者應該能夠輕鬆地回答他自己的問題,而不用發佈到StackOverflow。當解決方案對您不明顯時,您應該發佈到StackOverflow,如果答案對您不明顯,則應該包含錯誤消息。首先,因爲您無法確定是否對其他人顯而易見(因爲這對您並不明顯),對於兩人來說也是如此,因爲這會使錯誤更容易被發現。 – nhgrif

回答

2

這裏的問題是,對於message:說法,你試圖發送此:

@"%@ poked you.", userName 

這沒有任何意義。

相反,您需要發送一個NSString對象作爲參數。

NSString *message = [NSString stringWithFormat:@"%@ poked you.", self.senderString]; 

現在,我們已經創建了一個NSString對象,我們可以使用這個對象作爲消息參數。

您可以在調用中創建此對象以創建警報視圖,但爲了便於閱讀和調試,最好這樣做。

NSString *message = [NSString stringWithFormat:@"%@ poked you.", self.senderString]; 
UIAlertView *pokeAlert = [[UIAlertView alloc] initWithTitle:@"Poke" 
                message:message 
                delegate:self 
              cancelButtonTitle:@"Yes" 
              otherButtonTitles:@"No", nil]; 
[pokeAlert show]; 
+0

這也是一個正常工作,正確的解決方案。我接受了另一個問題,因爲它很快就發佈了,但我也給+1,因爲它完全是當之無愧的。謝謝。 – rihe

+0

這很好,但只是考慮其他答案並沒有真正解釋問題/解決方案,而且其他答案實際上並不完全正確,如果您只是複製並粘貼它,則無法正常工作。 – nhgrif

1
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Poke" message:[NSString stringWithFormat:@"%@ poked you.", self.senderString] delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:@"No", nil]; 
[alertView show]; 
4

您應該創建composed- NSString,然後再調用它在你的UIAlertView

NSString *message = [NSString stringWithFormat:@"%@ poked you.", userName]; 
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Poke" message:message, self.senderString delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:@"No", nil]; 
[alertView show]; 
+0

@sebastien回答說最好把複合陳述分成幾個單獨的陳述。它更清晰,更易於調試,並且通常在最終生成的代碼中效率更高。這將使您的編碼生活更輕鬆。 – zaph

+0

你的信息:「論點是錯誤的。 – nhgrif

+0

這很好,謝謝。 – rihe