将变量从Void函数传递到另一个类

时间:2012-03-18 06:53:07

标签: objective-c ios nsobject

早上好,

我一直在尝试在UIAlertView上创建一个动态消息框,但我还没有管理,我使用命令将数据从一个类发送到另一个类:

   message = @"Now Starting Download";
   transition.message = self.message;
    NSLog(@"%@",message);

此处显示消息@"Now Starting Download" 当我转到另一个类(转换类)时,我使用以下代码实现:

-(id) showmessage:(NSString *)trans
{

    NSLog(@"%@ This is in the transition class",message);

    return trans;
}

现在消息为空:@

任何帮助将不胜感激

-Chris

2 个答案:

答案 0 :(得分:0)

我不确定“过去”是什么意思,但如果showmensage是过渡对象的方法,则可以使用全名:

 -(id) showmessage:(NSString *)trans {
      NSLog(@"%@ This is in the transition class",self.message);
      return trans;
   }

另一方面,我想知道,如果你不使用它,为什么你将trans传递给showmensage

答案 1 :(得分:0)

此:

-(id) showmessage:(NSString *)trans
{

    NSLog(@"%@ This is in the transition class",message);

    return trans;
}

毫无意义。首先,如果您只使用NSLog NSWtring *类,为什么不返回NSString *?此外,您希望NSLog传递方法中传递的对象,因为这一切都很重要。这是我的建议编辑:

-(NSString*) showmessage:(NSString *)trans
    {

        NSLog(@"%@ This is in the transition class",trans);

        return trans;
    }

如果这不起作用,或打印为null,那么你绝对不会对你传递给这种方法的字符串取得所有权或建议足够强的保留长度。

或者,采取不同的方法,你暗示你想要对象的类通过,这就是你决定返回(id)的原因,在这种情况下,你可能会尝试

NSLog(@"%@ This is in the transition class",NSStringFromClass([trans class]));

甚至为您的方法添加发件人参数:-(NSString*) showmessage:(NSString *)trans withSender:(id)sender;