Objective C - 初始化对象时通过方法参数传递对象名称的问题

时间:2011-08-10 10:04:38

标签: objective-c object methods parameters

我是Objective C的新手,我正在尝试使用一行代码创建一个初始化对象(按钮对象更精确)的方法...我的方法声明是......

- (void)buttonDeclaration: (UIButton *)mButton :(int)xloc :(int)yloc :(int)bWidth :(int)bHeight 
                         : (NSString *)sImage :(UIViewController *)mView :(SEL)mSelector
{
  mButton = [UIButton buttonWithType:UIButtonTypeCustom];
  [self buttonSetxy:mButton :xloc :yloc :bWidth :bHeight];
  [mButton setBackgroundImage:[UIImage imageNamed:sImage] forState:UIControlStateNormal];

  [mView.view addSubview:mButton];
}

我的方法调用是......

[...buttonDeclaration:newButton :40 :65 :80 :65...]

但是当我尝试添加

[newButton setHidden:FALSE]; 

在我调用该方法之后它什么也没做。我不确定正确的术语是什么,但对象名称应该是newButton而不是mButton。这是否有意义,我该如何做到这一点?

1 个答案:

答案 0 :(得分:0)

实际上,在目标c中声明方法的方式是不同的。

当你使用多个参数声明方法时,它应该是这样的。

  
      
  • (void)myMethod:(int)firstNum secondArgument:(int)secondNum
  •   

所以ur方法将被声明为

  
      
  • (void)buttonDeclaration:(UIButton *)mButton xPosition:(int)xloc yPosition:(int)yloc Width:(int)bWidth height:(int)bHeight imageName:(NSString *)sImage myView:(UIViewController *) mView选择器:(SEL)mSelector
  •   

现在您将通过

调用此方法
  

[self buttonDeclaration:myBtn xPosition:5 yPosition:10 width:5 height:10依旧.......]

如果你想隐藏你的按钮,只需写下

  

myBtn.hidden = YES;