2011-01-05 4 views
2

im new in iphone.now im 내 iphone.here에서 버튼 이미지보기를 개발하는 이미지가 큰 이미지를 표시하는 이미지 크기를 조정하고 싶습니다. 이미지가 중간 크기처럼 표시된다는 의미입니다. 이런 식으로 코드를 구현합니다.iphone에서 버튼 이미지 크기를 조정하는 방법

images = [[NSMutableArray alloc]init]; 
[images addObject:[UIImage imageNamed:@"bearlarge.jpg"]]; 
[images addObject:[UIImage imageNamed:@"bufflo_large.jpg"]]; 
[images addObject:[UIImage imageNamed:@"camel_large.jpg"]]; 
UIView *view = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 



int row = 0; 
int column = 0; 


for(int i = 0; i < images.count; ++i) { 



// UIImage *thumb = [images objectAtIndex:i]; 

    UIButton * button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 



    button.frame = CGRectMake(column*105+14, row*105+10, 50,50); 


    [button setImage:[images objectAtIndex:i] forState:UIControlStateNormal]; 
    [button addTarget:self 
     action:@selector(buttonClicked:) 
    forControlEvents:UIControlEventTouchUpInside]; 
    button.tag = i; 




    [view addSubview:button]; 

    if (column == 2) { 
    column = 0; 
    row++; 
    } else { 
    column++; 
    } 
    } 
//[view setContentSize:CGSizeMake(320, (row+1) * 80 + 10)]; 
    self.view = view; 
[view release]; 

아이폰에서 버튼 이미지의 크기를 조절하는 방법에 대한 코드를 보내주십시오.

고마워요.

+1

이 코드를 다시 포맷하십시오) (이하 "{}"버튼 편집) – nacho4d

+1

이미지는 위의 코드에서 버튼의 크기에 맞도록 크기가 조정받을 것입니다. 정확히 무엇을 찾고 있니? –

답변

1

를 사용

- (UIImage *)rescaleImageToSize:(CGSize)size { 
    CGRect rect = CGRectMake(0.0, 0.0, size.width, size.height); 
    UIGraphicsBeginImageContext(rect.size); 
    [self drawInRect:rect]; // scales image to rect 
    UIImage *resImage = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 
    return resImage; 
} 
1

단추 위에 UIImageView를 추가하는 것이 좋습니다. 그래서 당신은 쉽게 프레임 크기를 변경할 수 있습니다.

CODE

UIButton *imageBut=[[UIButton alloc]initWithFrame:CGRectMake(0, 0, 100, 100)]; 
UIImageView *img=[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)]; 
img.userInteractionEnabled=NO; 
[imageBut addSubview:img]; 
[self.view addSubview:imageBut]; 
[imageBut release]; 
[img release]; 

아니면, 당신은있는 UIImage이 범주를 만들 수

[button setBackgroundImage:YourImage]; 
+0

내가 선택한 이미지를 전체 이미지로 표시해야하는 이유는 내가 단추를 선택하는 이유입니다. – user549767

0

setImage가 원래 크기로 이미지를 설정 할에 당신은 당신의 프로젝트에 포함되어 있습니다.

setBackgroundImage는 원본 이미지의 크기를 조정합니다.

[button setBackgroundImage:[images objectAtIndex:i] forState:UIControlStateNormal]; 
0
-(void)scaleImage:(id)sender 
{ 
     if([(UIPinchGestureRecognizer*)sender state] == UIGestureRecognizerStateEnded) 
     { 
     lastScale = 1.0; 
     return; 
     } 

    CGFloat scale = 1.0 - (lastScale - [(UIPinchGestureRecognizer*)sender scale]); 

     CGAffineTransform currentTransform = [(UIPinchGestureRecognizer*)sender view].transform; 

    CGAffineTransform newTransform = CGAffineTransformScale(currentTransform, scale, scale); 

    [[(UIPinchGestureRecognizer*)sender view] setTransform:newTransform]; 

    lastScale = [(UIPinchGestureRecognizer*)sender scale]; 

}

관련 문제