2011-04-27 2 views
4

아래 코드를 사용하면 버튼을 정상 상태로 유지하는 것처럼 보입니다. 내가 whiteButton에 정상 상태에 대한 이미지를 설정하고 greenButton에 일반 숫자에 대한 다음 버튼은 항상 흰색과 결코 녹색이면선택한 상태에 대한 사용자 정의 uiButton의 배경 이미지를 변경할 수 없습니다.

UIButton *gumb = [UIButton buttonWithType:UIButtonTypeCustom]; 
    gumb.frame = CGRectMake(4, 40, 104, 37); 
    gumb.tag=0; 
    [gumb setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; 
    [gumb setTitleColor:[UIColor blackColor] forState:UIControlStateSelected]; 
    [gumb setBackgroundImage:[UIImage imageNamed:@"greenButton.png"] forState:UIControlStateNormal]; 
    [gumb setBackgroundImage:[UIImage imageNamed:@"whiteButton.png"] forState: UIControlStateSelected]; 

.

+3

당신이 버튼을 클릭하면, 그것은 ** ** higlighted하는 상태를 변경합니다. ** ** 상태가 선택되지 않았습니다. ** 선택된 ** 상태는 탭 버튼에 사용됩니다 –

답변

0

당신이 버튼을 클릭 행동 selected로 버튼의 상태를 설정 함 대신 선택한 이미지의 하나

- (IBAction)buttonClicked:(id)sender; 
{ 
UIButton *button = (UIButton *)sender; 
if(button.tag == 0)// in your case 
{ 
button.selected = YES; 
} 
// Do something 
} 

희망이

+0

iOS가 this.I 돌볼 것이라고 생각했는데 코드에 3 버튼이 생성되어 다른 하나의 상태를 "selected = NO"로 설정해야합니다. 눌렀다. – DixieFlatline

+0

그건 나를 위해 작동하지 않았다. –

4
[gumb setBackgroundImage:[UIImage imageNamed:@"whiteButton.png"] forState: UIControlStateHighlighted] 

사용

1

나는 확실하지 데 도움이 Selected 상태가 Tab-Button에만 사용 되었다면 DixieFlatline과 같은 시도를했기 때문에 버튼 이미지를 변경하는 경우가있었습니다. 그러나 tt.Kilew의 방법은 확실히 노력할 가치가 있습니다. 그냥 시도하십시오 : [gumb setBackgroundImage : [UIImage imageNamed : @ "whiteButton.png"] forState : UIControlUIControlStateHighlighted]; 클릭하면 버튼 이미지가 변경됩니다. 선택 상태의 이미지를 설정

0

코드 : 정상 상태의 이미지를 설정

[_button setImage:[UIImage imageNamed:@"whiteButton.png"] forState: UIControlStateHighlighted]; 

코드 :

[_button setImage:[UIImage imageNamed:@"whiteButton.png"] forState: UIControlStateNormal]; 
관련 문제