2012-05-03 18 views
0

在我的应用程序中使用UIScrollView。我添加了按钮到UIScrollView。 对于我分配图像使用的每个按钮使用预定义的方法更改按钮图像

- (void)setImage:(UIImage *)image forState:(UIControlState)state; 

和操作。

forState i used UIControlStateNormal in viewDidLoad

而当我们点击按钮图像必须改变。 为此,我使用了相同的方法,但将状态值更改为UIControlStateSelected in ViewDidLoad

但按钮图像没有改变。 任何一个可以帮助或建议

+0

你想保持交替图像按钮被点击还是应该像刚刚切换为攻的很短的时间后? –

回答

0

使用此代码行我认为这会对你有所帮助。

-(void)viewDidLoad 
{ 
    UIButton *myButton = [[UIButton buttonWithType:UIButtonTypeCustom] retain]; 
    [myButton setFrame:CGRectMake(0,3,70,32)]; 
    [myButton setImage:[UIImage imageNamed:@"barbutton.png"] forState:UIControlStateNormal]; 
    [myButton addTarget:self action:@selector(compete) forControlEvents:UIControlEventTouchUpInside]; 
} 
-(void)compete 
{ 
    [myButton setImage:[UIImage imageNamed:@"barbutton1.png"] forState:UIControlStateNormal]; 
} 
+0

试试这个,如果它工作通知我们。 – vishiphone

+0

雅其工作感谢 –

+0

好吧然后标记答复箭头感谢。 – vishiphone

1

您对使用这样

在viewDidLoad中设置图片为正常,选择状态

-(void)ViewDidLaod 

[myButton setImage:[UIImage imageNamed:@"barbutton.png"] forState:UIControlStateNormal]; 

[myButton setImage:[UIImage imageNamed:@"barbutton1.png"] forState:UIControlStateSelected]; 

要进行选择图像的变化可以在下面的代码

完成
-(void)buttonclick 

[myButton setSelected:YES]; 

[myButton setSelected:NO]; 
0

使用

[button setImage:[UIImage imageNamed:@"button.png"] forState:UIControlStateNormal]; 
[button setImage:[UIImage imageNamed:@"button_highlighed.png"] forState:UIControlStateHighlighted];