2012-10-09 8 views
1

내 응용 프로그램의 요구 사항은 사진을 찍은 다음 조각으로 나눌 필요가 있다는 것입니다. 예를 들어 8 개의 행과 8 개의 열이 있다고합시다. 칼럼의 이름을 1에서 8까지 지정할 수있는 반면, A부터 H까지의 행의 이름을 지정할 수 있습니다. 그림을 클릭 한 후 사용자가 A1을 선택하면 코드가 A1을 확대하여 옵션을 제공 할 수 있어야한다고 가정합니다. 몇 가지 기호를 배치하거나 사용 가능한 옵션에서 몇 가지를 표시하는 것과 같은 몇 가지. 어떻게하면 1) 분할 2) 확대 3) 작은 로고의 형태로 사용자에게 다양한 기호를 제공합니까? 나는 아이폰 프로그래밍에 아주 익숙하다. UIImagePickerController라고 불리는 클래스가 있다는 것을 알았지 만, 1,2와 3을 달성하는 방법을 모른다. 제발 도와주세요.어떻게 스냅 샷을 xcode로 조각으로 나눠서 사용자가 각 조각과 상호 작용할 수있게 할 수 있습니까?

+1

1. UIImage 및 CoreGraphics를 사용하십시오. 구글 "자르기 UIImage". 2. 확대 된 부분은 어떻게 표시할까요? 같은 화면에서 새로운보기로 푸시됩니까? 3. 어떤 기호가 있습니까? 작은 이미지? 많은 UIImageViews를 사용하고 Drag Events를 잡아라. 마지막으로, 문제를 해결할 수 있도록 몇 가지 코드를 보여주십시오. 아무도 당신을 위해 당신의 코드를 작성할 수 없습니다. –

+0

계획 단계에 있기 때문에 코드를 준비 할 필요가 없습니다. 그렇기 때문에 이러한 각 단계를 수행하는 방법에 대한 리소스를 살펴 보는 것입니다. 당신이 나를 도울 수? – phoenix

+0

@AndreyChevozerov 2) 확대의 목적은 사용자가 해당 영역에 다양한 기호를 삽입하도록하는 것입니다. 그림이 3x3 9 단위로 구성되어 행이 A-C에서 이름이 지정되고 1-3 열이 양식이되도록 A1이 나타나야하고 사용자가 삼각형 기호와 같은 것을 넣을 수 있도록합니다. 이제 삼각형 기호는 밀도 또는 밝기와 같은 것을 의미 할 수 있습니다. 각 기호는 그 자체로 의미가 있습니다. – phoenix

답변

2

은 음, 조각으로 이미지를 분할 당신은 (UIImage 카테고리에 배치) 다음 코드를 사용한다 :

- (UIImage *)imageCroppedWithRect:(CGRect)rect 
{ 
    if (self.scale > 1.0f) { 
     rect = CGRectMake(rect.origin.x * self.scale, 
          rect.origin.y * self.scale, 
          rect.size.width * self.scale, 
          rect.size.height * self.scale); 
    } 

    CGImageRef imageRef = CGImageCreateWithImageInRect(self.CGImage, rect); 
    UIImage *result = [UIImage imageWithCGImage:imageRef scale:self.scale orientation:self.imageOrientation]; 
    CGImageRelease(imageRef); 
    return result; 
} 

지금 당신은 어떤 이미지를해야하고 그 이미지 UIImageViews의 적절한 양을 만들어야합니다. 그런 다음 사용자가이 식을 UITapGestureRecognizer을 추가 확대 할 수 있도록하는 방법의 따라 줌 숨겨진 UIImageView을 추가하고 조각 도청 사용 다음 코드 수 :.

- (void)pieceTapped:(UITapGestureRecognizer *)recognizer 
{ 
    UIImageView *piece = recognizer.view; 
    self.zoomedImageView.frame = piece.frame; 
    self.zoomedImageView.image = piece.image; 
    self.zoomedImageView.hidden = NO; 
    [UIView animationWithDuration:0.3 animation:^{ 
     self.zoomedImageView.frame = self.view.frame; 
    }]; 
} 

그리고 지금 당신은 당신의 기호를 배치해야 그 이미지에. 하지만 어떻게하고 싶니? 드래그 이미지 & 어딘가에서 또는 자동으로? 심볼을 이미지에 영구히 두거나 그 위에 놓습니다.

+0

도움을 많이 주셔서 감사합니다 !!! – phoenix