0

我必须UIImagePickerController从 photoLibrary 中挑选图像。从 photoLibrary 中选择图像后,我需要从视图中删除或隐藏按钮。但是选择图像后按钮仍然显示。

代码;

-(void)viewDidAppear:(BOOL)animated{
photopick= [UIButton buttonWithType:UIButtonTypeCustom];
    [photopick setImage:[UIImage imageNamed:@"photo.png"] forState:UIControlStateNormal];
    // [overlayButton setFrame:CGRectMake(80, 420, 60, 30)];

    [photopick setFrame:CGRectMake(10, 10, 80, 50)];

    [photopick addTarget:self action:@selector(showAlbum:) forControlEvents:UIControlEventTouchUpInside];
    [[self view] addSubview:photopick];
}

-(void)showAlbum:(id)sender{

    imagePicker=[[UIImagePickerController alloc]init];

    imagePicker.delegate = self;

    imagePicker.allowsEditing =NO;

    imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;

   // imagePicker.sourceType=UIImagePickerControllerSourceTypeSavedPhotosAlbum;


    [self presentModalViewController:imagePicker animated:YES];



}

-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker{
    //release picker
    [picker dismissModalViewControllerAnimated:YES];
}

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

       [photopick removeFromSuperview];


       newImage = [[UIImageView alloc] initWithImage:[info objectForKey:UIImagePickerControllerOriginalImage]];

       [newImage setFrame:CGRectMake(0, 0, 320, 568)];
       [self.view addSubview:newImage];

       [picker dismissModalViewControllerAnimated:YES]; 
    }
4

1 回答 1

0

好吧,我在这里发现了一个问题

每次关闭模型视图控制器 viewDidAppear 方法调用后

这意味着每次新对象(photopick)创建并添加到视图中,这就是从视图中删除后出现 photopick 的原因。您可以将 photopick 按钮代码保留在viewDidLoad.

于 2013-07-02T09:42:37.490 回答