【问题标题】:2 UIButtons to set 2 UIImageViews2 个 UIButtons 来设置 2 个 UIImageViews
【发布时间】:2013-04-18 19:41:36
【问题描述】:

我有 2 个UIButtons,我希望两个按钮都选择一个图像,button1 正在将图像设置为 imageview1button2imageView2。我现在创建了button1,它选择一个图像并将imageView1 设置为该图像,但是如果我正在创建button2,我现在不需要做什么:

- (IBAction)chooseImage1:(id)sender {
     imagePicker.delegate = self;
     imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
     [self presentViewController:imagePicker animated:YES completion:nil];
}

- (IBAction)chooseImage2:(id)sender {
     imagePicker.delegate = self;
     imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
     [self presentViewController:imagePicker animated:YES completion:nil];
}

UIImage *image;

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {

      NSURL *mediaURL;
      mediaURL = (NSURL *)[info valueForKey:UIImagePickerControllerMediaURL];
      image = (UIImage *)[info valueForKey:UIImagePickerControllerOriginalImage];

     imageView1.image=image;
     [picker dismissViewControllerAnimated:YES completion:nil];
}

-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
     [picker dismissViewControllerAnimated:YES completion:nil];
}

【问题讨论】:

  • 不,不是 Xcode 问题。

标签: ios objective-c uiimageview uibutton


【解决方案1】:

在您的 .h 文件中创建索引。像

NSUInteger *selectedImageIndex;

在您的.m 文件中:

- (void)showImagePicker:(UIImagePickerControllerSourceType)source{
    UIImagePickerController *ipc = [[UIImagePickerController alloc] init];
    ipc.sourceType = source;
    ipc.allowsEditing = YES;
    ipc.delegate = self;
    [self presentModalViewController:ipc animated:YES];
}

- (IBAction)chooseImage1:(id)sender {
    selectedImageIndex = 1;
    [self showImagePicker:UIImagePickerControllerSourceTypePhotoLibrary];
}

- (IBAction)chooseImage2:(id)sender {
    selectedImageIndex = 2;
    [self showImagePicker:UIImagePickerControllerSourceTypePhotoLibrary];
}    

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
        UIImage *img = [info objectForKey:@"UIImagePickerControllerEditedImage"];
        if (!img)
           img = [info objectForKey:@"UIImagePickerControllerOriginalImage"];

        if (selectedImageIndex == 1)
           imageView1.image=img;
        else
           imageView2.image = img;

        [picker dismissViewControllerAnimated:YES completion:nil];
}


-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
       [picker dismissViewControllerAnimated:YES completion:nil];
}

但话又说回来,这只是一种方法。

【讨论】:

  • 您可能希望在 chooseImage2: 中将索引设置为 2,而不是 1。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-05
  • 1970-01-01
  • 2010-12-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多