iOS-UIActionSheet的简单使用和调用系统相簿

来源:互联网 发布:淘宝店铺装修源码 编辑:程序博客网 时间:2024/05/16 09:04

实现UIActionSheetDelegate


UIActionSheet *menu = [[UIActionSheet alloc]

                           initWithTitle@""

                           delegate:self

                           cancelButtonTitle:@"Cancel"

                           destructiveButtonTitle:nil

                           otherButtonTitles:@"图库相册",@"拍照"nil];

    [menu showInView:self.view];


# pragma mark UIActionSheet method

- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex

{

    if (buttonIndex==0) {

        [self photoalbumr];//图库相册

    

    }else if(buttonIndex==1){

         [self photocamera];//拍照

    }else if(buttonIndex==2){

    

    }


    

    [actionSheet release];

}



调用系统的相簿


实现UIImagePickerControllerDelegate


-(void)photoalbumr{

    if ([UIImagePickerController isSourceTypeAvailable:

         UIImagePickerControllerSourceTypePhotoLibrary]) {

        UIImagePickerController *picker =

        [[UIImagePickerController allocinit];

        picker.delegate = self;

        picker.allowsImageEditing = YES;

        picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;

        [self presentModalViewController:picker animated:YES];

        [picker release];

    }

    else {

        UIAlertView *alert = [[UIAlertView alloc

                              initWithTitle:@"Error accessing photo library" 

                              message:@"Device does not support a photo library" 

                              delegate:nil 

                              cancelButtonTitle:@"Drat!" 

                              otherButtonTitles:nil];

        [alert show];

        [alert release];

        

    }


}

-(void)photocamera{

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {

        UIImagePickerController* imagepicker = [[UIImagePickerController allocinit];

        imagepicker.delegate = self;

        imagepicker.sourceType = UIImagePickerControllerSourceTypeCamera;

        imagepicker.modalTransitionStyle = UIModalTransitionStyleCoverVertical;

        imagepicker.allowsEditing = YES;

        [self presentModalViewController:imagepicker animated:YES];


    }

    else {

        UIAlertView *alert = [[UIAlertView alloc

                              initWithTitle:@"Sorry" 

                              message:@"设备不支持拍照功能" 

                              delegate:nil 

                              cancelButtonTitle:@"确定" 

                              otherButtonTitles:nil];

        [alert show];

        [alert release];

        

    }


  }

#pragma mark UIImagePicker method

- (void)imagePickerController:(UIImagePickerController *)picker 

        didFinishPickingImage:(UIImage *)image 

                  editingInfo:(NSDictionary *)editingInfo

{  

  /*将图片存储到document下

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,     NSUserDomainMaskYES);

    NSString *documentsDirectory = [paths objectAtIndex:0];

    NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:@"savedImage.png"];

    NSData *imageData = UIImagePNGRepresentation(image);

    [imageData writeToFile:savedImagePath atomically:NO];   

      _imgName=@"savedImage.png";

    self._imgFilePath=documentsDirectory;

    */

  

    [addPhoto setBackgroundImage:image forState:UIControlStateNormal];

   

     [picker dismissModalViewControllerAnimated:YES];


}


// 完成选取

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker

{

    [picker dismissModalViewControllerAnimated:YES];

}

0 0