将 NSString 传递到 UIAlertview 的消息内容中



我想显示这样的东西:SampleUser poked you.UIAlertViewmessage,但实际上我得到错误。我知道如何用一个简单的字符串,我不知道如何用一个包含另一个字符串的字符串。

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

您应该首先创建您的composati_ 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]; 

这里的问题是,对于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];
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Poke" message:[NSString stringWithFormat:@"%@ poked you.", self.senderString] delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:@"No", nil];
[alertView show];

最新更新