0

在我的应用程序中使用 UIScrollView。我向 UIScrollView 添加了按钮。对于我使用分配图像的每个按钮

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

和行动。

forState 我 在viewDidLoad中使用了UIControlStateNormal

当我们点击按钮时,图像必须改变。为此,我使用了相同的方法,但 forState 值 在ViewDidLoad中更改为UIControlStateSelected

但按钮图像没有改变。任何人都可以提供帮助或建议

4

3 回答 3

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];
于 2012-05-03T11:58:39.737 回答
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];
 }
于 2012-05-03T12:04:12.597 回答
0

采用

[button setImage:[UIImage imageNamed:@"button.png"] forState:UIControlStateNormal];
[button setImage:[UIImage imageNamed:@"button_highlighed.png"] forState:UIControlStateHighlighted];
于 2012-05-03T12:07:28.423 回答