如何在模板图像的特定区域添加图像 [英] How to add Image at the particular area in a template image

查看:80
本文介绍了如何在模板图像的特定区域添加图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是模板图像( http://i.stack.imgur.com/9ME6A.jpg ),其中有多个圆形区域.我们需要,当我们单击任何一个圆形区域(一个一个地)时,应该打开图库,并且从图库中选择图像后,该图像应显示在所选的圆形区域上.请为我的问题提供任何链接或演示.我卡在这里.

This is a template image (http://i.stack.imgur.com/9ME6A.jpg) in which multiple circular area are available. we need, when we click on any circular area (one by one ) then gallery should be open and after selecting the image from gallery that image should be shown on the selected circular area. Please provide me any link or demo for my problem. i am stucking here.

谢谢!

推荐答案

#import <UIKit/UIKit.h>
#import <QuartzCore/QuartzCore.h>
@interface ViewController : UIViewController <UINavigationControllerDelegate,UIImagePickerControllerDelegate,UIGestureRecognizerDelegate>
@property (strong, nonatomic) IBOutlet UIImageView *imageView1;
@property (strong, nonatomic) IBOutlet UIImageView *imageView2;
@property (strong, nonatomic) IBOutlet UIImageView *imageView3;
@property (strong, nonatomic) IBOutlet UIImageView *imageView4;
@property (strong, nonatomic) IBOutlet UIImageView *imageView5;
@end

ViewController.m

ViewController.m

#import "ViewController.h"
@interface ViewController ()
{
  UIImageView *imageviewPick;
}
@end
@implementation ViewController
@synthesize imageView1,imageView2,imageView3,imageView4,imageView5;


- (void)viewDidLoad
{
 [super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.

imageView1.layer.cornerRadius = self.imageView1.frame.size.height / 2;
imageView1.layer.borderWidth = 1.0f;
imageView1.layer.borderColor = [[UIColor grayColor] CGColor];
imageView1.layer.masksToBounds = YES;

imageView2.layer.cornerRadius = self.imageView2.frame.size.height / 2;
imageView2.layer.borderWidth = 1.0f;
imageView2.layer.borderColor = [[UIColor grayColor] CGColor];
imageView2.layer.masksToBounds = YES;

imageView3.layer.cornerRadius = self.imageView3.frame.size.height / 2;
imageView3.layer.borderWidth = 1.0f;
imageView3.layer.borderColor = [[UIColor grayColor] CGColor];
imageView3.layer.masksToBounds = YES;

imageView4.layer.cornerRadius = self.imageView4.frame.size.height / 2;
imageView4.layer.borderWidth = 1.0f;
imageView4.layer.borderColor = [[UIColor grayColor] CGColor];
imageView4.layer.masksToBounds = YES;

imageView5.layer.cornerRadius = self.imageView5.frame.size.height / 2;
imageView5.layer.borderWidth = 1.0f;
imageView5.layer.borderColor = [[UIColor grayColor] CGColor];
imageView5.layer.masksToBounds = YES;



UITapGestureRecognizer *tap1 = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapImageOne:)];
tap1.numberOfTapsRequired = 1;

UITapGestureRecognizer *tap2 = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapImageTwo:)];
tap2.numberOfTapsRequired = 1;

UITapGestureRecognizer *tap3 = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapImageThree:)];
tap3.numberOfTapsRequired = 1;

UITapGestureRecognizer *tap4 = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapImageFour:)];
tap4.numberOfTapsRequired = 1;

UITapGestureRecognizer *tap5 = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapImageFive:)];
tap4.numberOfTapsRequired = 1;


imageView1.userInteractionEnabled = YES;
imageView2.userInteractionEnabled = YES;
imageView3.userInteractionEnabled = YES;
imageView4.userInteractionEnabled = YES;
imageView5.userInteractionEnabled = YES;


[imageView1 addGestureRecognizer:tap1];
[imageView2 addGestureRecognizer:tap2];
[imageView3 addGestureRecognizer:tap3];
[imageView4 addGestureRecognizer:tap4];
[imageView5 addGestureRecognizer:tap5];
}
- (void)didReceiveMemoryWarning 
{
  [super didReceiveMemoryWarning];
  // Dispose of any resources that can be recreated.
}

-(void)tapImageOne:(UIGestureRecognizer *)tapGesture
{
  imageviewPick = (UIImageView *)tapGesture.view;
  [self showGallery];
}
-(void)tapImageTwo:(UIGestureRecognizer *)tapGesture
{
  imageviewPick = (UIImageView *)tapGesture.view;
  [self showGallery];
}
-(void)tapImageThree:(UIGestureRecognizer *)tapGesture
{
   imageviewPick = (UIImageView *)tapGesture.view;
   [self showGallery];
}
-(void)tapImageFour:(UIGestureRecognizer *)tapGesture
{
  imageviewPick = (UIImageView *)tapGesture.view;
  [self showGallery];
}
-(void)tapImageFive:(UIGestureRecognizer *)tapGesture
{
  imageviewPick = (UIImageView *)tapGesture.view;
  [self showGallery];
}

-(void)showGallery
{
   UIImagePickerController *pickImage = [[UIImagePickerController alloc]init];
   pickImage.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
   pickImage.delegate = self;
   [self presentViewController:pickImage animated:YES completion:nil];
}

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info
{
   UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
   imageviewPick.image = image;
   [picker dismissViewControllerAnimated:YES completion:nil];
}
@end

这篇关于如何在模板图像的特定区域添加图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆