2012-05-20 36 views
0

我想设置一个NSMutablearray,但总是得到空值,它不更新与迭代上的不同值。下面是代码:NSMutableString不是追加,它全是空

NSMutableString *tipo = [NSMutableString stringWithString:@""]; 

     if (self.canas.on){ 
      [tipo stringByAppendingString: @"0"]; 
     } 

     if (self.copas.on){ 
      if ([tipo length]==0){ 
       [tipo stringByAppendingString: @"1"]; 

      }else{ 
       [tipo stringByAppendingString:@",1"]; 
      } 
     } 

     if (self.comer.on){ 
      if ([tipo length]==0){ 
      [tipo stringByAppendingString: @"2"]; 

     }else{ 
      [tipo stringByAppendingString:@",2"]; 
      } 
     } 

非常感谢

回答

4

因为你应该使用appendString:方法,而不是stringByAppendingString:

区别在于第一个确实将参数附加到接收器,而第二个只是返回这个值(接收器保持不变)。第二条消息可发送到NSString,而第一条消息只可用于NSMutableString

希望你看到不同之处。

+0

非常感谢!!!! – theomen