2012-11-08 24 views
1

我是Xcode的初学者,我遇到了问题。 我有2个按钮:更改背景按钮2到按钮1 iPhone

- (IBAction) HIGH1: (id) sender 
- (IBAction) HIGH2: (id) sender 

当用户点击该按钮HIGH1,我想改变按钮HIGH2的背景(与图像)。

我该如何做到这一点?

回答

2

您需要为按钮创建IBOutlet才能更改它们。

Control +将按钮从Interface Builder拖动到.h文件以创建插座。事情是这样的:

@property (weak, nonatomic) IBOutlet UIButton *HIGH1; 
@property (weak, nonatomic) IBOutlet UIButton *HIGH2; 
//Dont forget to @synthesize 

在IBAction为方法,你再拨打:

- (IBAction) HIGH1: (id) sender 
{ 
    self.HIGH2 setBackgroundImage:[UIImage imageNamed:@"myButtonImage"] forState:UIControlStateNormal]; 
} 

确保你有你在你的应用程序包选择的名称的图像,并且该IBOutlet中的按钮是正确连接(IBOutlet的左边大小的灰色圆圈内部必须有一个小黑色圆圈)

+0

噢,它的工作原理! 谢谢! :) – user1809759

+0

没问题,请提问任何问题。 – pedros

0

访问您的伊娃从HIGH2,并设置了setBackgroundImage:forState:对HIGH1

1
[HIGH1 addTarget:self 
      action:@selector(buttonDidPushed) 
forControlEvents:UIControlEventTouchUpInside]; 

然后,

-(void)buttonDidPushed 
{ 
     HIGH2.backgroundColor = [UIColor blackColor]; 
     [self.view addSubview:HIGH2]; 
} 

我希望这个代码可以帮助您。

+0

我忘了提及我想放置背景图像 – user1809759

+0

这意味着“HIGH2.imageView = [[UIImageView alloc] initWithImage:(UIImage *)myBackgroundImage];“ ? – s067803

+0

不起作用:/ – user1809759