【问题标题】:iPhone Passing A String From One Method To Another (Instance Variable?)iPhone将字符串从一个方法传递到另一个(实例变量?)
【发布时间】:2011-03-23 11:04:46
【问题描述】:

我有一个在方法期间设置的值,但之后需要在另一个方法中使用。

我已经设置了一个实例变量,我假设值可以在同一个实例中的所有方法上使用。我似乎无法加载它...

这是怎么做到的……

(如果这听起来有点含糊,我很抱歉!)

【问题讨论】:

  • sry 我不明白你的问题,你可能想使用可以在整个类中使用的变量,你应该将它实现为类属性或全局变量并像这样分配它:[[something aloc ]保留];

标签: iphone objective-c cocoa-touch ios ios4


【解决方案1】:

如果实例变量是接口的一部分,那么所有接口方法都可以使用它。

@interface myInterface : NSObject
{
   // someInstanceVariable

}
-(void) initialize ;  // initialize someInstanceVariable
-(int) methodOne ;
-(float) methodTwo ;
@end

这两个方法都可以访问初始化的实例变量。

【讨论】:

  • 好吧,那我完全错了。我需要使用一种方法中的数据,将其设置在可以用于其他方法的地方。
  • 数据设置方法不是在界面的某处吗?
  • 在标题中我已将“NSString *xmlString”声明为属性并将其合成到 .m 文件中。然后我有一个从服务器获取响应字符串的方法,需要将其存储在该变量中,以便其他方法可以使用它.....?我希望这能为您提供更多信息...我可能不得不补充一下,我对此还很陌生! :)
【解决方案2】:

只是一个例子: 你的类有你的 nsstring 和以下两种方法:

-(void)setValue{
    self.xmlString = @"some string";
}

-(NSString*)getValue{
    NSLog([self xmlString]);
    return self.xmlString;
}

只要将变量定义为属性并正确合成,就可以在同一个实例中使用这两种方法。

那么你可以使用

[yourInstance1 setValue:@"hello"];
[yourInstannce2 setValue:[yourInstance1 getValue]];

希望这能解决您的问题

【讨论】:

    【解决方案3】:

    只需在 .h 文件中声明该实例变量,然后您就可以在该类的任何函数中使用它。

    【讨论】:

      猜你喜欢
      • 2015-03-13
      • 1970-01-01
      • 2012-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-10
      • 1970-01-01
      相关资源
      最近更新 更多