Ios 如何根据uiimageview的标记值属性在其上添加图像。?
我在uiimageview点击事件中打开了一个摄像头,希望根据点击的图像添加摄像头图像。在我看来,我有四个形象。每个imageview将分别打开相机。看看我的代码 喜欢 步骤1 为手势指定相同的方法名称 步骤2 获取标签并将标签传递给imagepickercontroller 步骤3 根据标记设置最终图像 喜欢 步骤1 为手势指定相同的方法名称 步骤2 获取标签并将标签传递给imagepickercontroller 步骤3 根据标记设置最终图像Ios 如何根据uiimageview的标记值属性在其上添加图像。?,ios,objective-c,Ios,Objective C,我在uiimageview点击事件中打开了一个摄像头,希望根据点击的图像添加摄像头图像。在我看来,我有四个形象。每个imageview将分别打开相机。看看我的代码 喜欢 步骤1 为手势指定相同的方法名称 步骤2 获取标签并将标签传递给imagepickercontroller 步骤3 根据标记设置最终图像 喜欢 步骤1 为手势指定相同的方法名称 步骤2 获取标签并将标签传递给imagepickercontroller 步骤3 根据标记设置最终图像 什么是第一个和第二个…这些是图像名称,先生,我的
什么是第一个和第二个…这些是图像名称,先生,我的视图中有四个图像什么是第一个和第二个…这些是图像名称,先生,我的视图中有四个图像,先生,这样的标记会给我错误,例如“在uiimagePickerController类型的对象上找不到属性标记”,您在哪一行看到了这一个,先生“picker.tag=tabbedIamage.tag;“它应该类似于
picker.view.tag
您不能将标记设置为viewcontrollerYa bro我知道imagepicker没有任何标记属性bro,很抱歉我修改了我的回答sir它给我这样的标记错误“在uiimagePickerController类型的对象上找不到属性标记”,您在哪一行看到这个sir”picker.tag=tabbedIamage.tag;“它应该像picker.view.tag
你不能将tag设置为viewcontrollerYa bro我知道了imagepicker没有任何标记属性bro,很抱歉我修改了我的答案
- (void)viewDidLoad {
[super viewDidLoad];
if (![UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
UIAlertView *myAlertView = [[UIAlertView alloc] initWithTitle:@"Error"
message:@"Device has no camera"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles: nil];
[myAlertView show];
}
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapDetected)];
singleTap.numberOfTapsRequired = 1;
[_first setUserInteractionEnabled:YES];
[_first addGestureRecognizer:singleTap];
_first.tag = 1;
UITapGestureRecognizer *singleTap1 = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapDetectedforsecondimage)];
singleTap1.numberOfTapsRequired = 1;
[_second setUserInteractionEnabled:YES];
[_second addGestureRecognizer:singleTap1];
_second.tag = 2;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
-(void)tapDetected{
NSLog(@"single Tap on imageview");
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentViewController:picker animated:YES completion:NULL];
}
-(void)tapDetectedforsecondimage
{
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentViewController:picker animated:YES completion:NULL];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *chosenImage = info[UIImagePickerControllerEditedImage];
self.second.image = chosenImage;
[picker dismissViewControllerAnimated:YES completion:NULL];
}
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapDetected:)];
singleTap.numberOfTapsRequired = 1;
_first.tag = 1;
[_first setUserInteractionEnabled:YES];
[_first addGestureRecognizer:singleTap];
UITapGestureRecognizer *singleTap1 = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapDetected:)];
singleTap1.numberOfTapsRequired = 1;
[_second setUserInteractionEnabled:YES];
_second.tag = 2;
[_second addGestureRecognizer:singleTap1];
-(void) tapDetected:(UITapGestureRecognizer *)gestureRecognizer{
//Get the View
UIImageView *tabbedIamage = (UIImageView*)gestureRecognizer.view;
NSLog(@"%d",tabbedIamage.tag);
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
// set the tag
picker.view.tag = tabbedIamage.tag;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentViewController:picker animated:YES completion:NULL];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *chosenImage = info[UIImagePickerControllerEditedImage];
if (picker.view.tag == 1)
{
self.first.image = chosenImage;
}
else
{
self.second.image = chosenImage;
}
[picker dismissViewControllerAnimated:YES completion:NULL];
}