我有一個UIButton,我成功地設置了背景圖片。我想在用戶點擊它時更改背景圖片(導航到下一個視圖控制器)。不幸的是,背景不會改變水龍頭。不過,它確實當我點擊並按住按鈕,所以我很困惑。代碼如下所示:UIButton背景圖片在水龍頭上不變
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(x_offset, y_offset, width, BUTTON_HEIGHT)];
[button setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
button.backgroundColor = [UIColor whiteColor];
UIImage *buttonImage = [[UIImage imageNamed:@"main_button"]
resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10)];
UIImage *pressedbuttonImage = [[UIImage imageNamed:@"main_button_pressed"]
resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10)];
[button setBackgroundImage:buttonImage forState:UIControlStateNormal];
[button setBackgroundImage:pressedbuttonImage forState:UIControlStateHighlighted];
[button setBackgroundImage:pressedbuttonImage forState:UIControlStateApplication];
[button setBackgroundImage:pressedbuttonImage forState:UIControlStateDisabled];
[button setBackgroundImage:pressedbuttonImage forState:UIControlStateReserved];
[button setBackgroundImage:pressedbuttonImage forState:UIControlStateSelected];
return button;
我知道我與UIControlStates過分了,但我想演示,我已經試過所有:)
您的第一種方法奏效 - 儘管我必須爲UIControlEventTouchDown和UIControlEventTouchUpOutside編寫處理程序 - 如果用戶將手指從按鈕上移開,後者將重置圖像。幸運的是,我有一個幫助器方法,它可以構建我的按鈕,所以我不必在處處添加這些代碼行:) – Ger 2015-02-08 22:17:23