iOS- 选择图片(相机/相册)

来源:互联网 发布:java贪吃蛇大作战源码 编辑:程序博客网 时间:2024/05/24 02:37


#import "ViewController.h"


@interface ViewController () <UIImagePickerControllerDelegate,UINavigationControllerDelegate,UIActionSheetDelegate>


@property (nonatomic,strong)UIButton * imgBtn;


@end


@implementation ViewController


@synthesize imgBtn;


- (void)viewDidLoad

{

    [superviewDidLoad];

    

    self.view.backgroundColor = [UIColorwhiteColor];

    

    [self loadSet];

}




- (void) loadSet

{

    imgBtn = [UIButtonbuttonWithType:UIButtonTypeCustom];

    imgBtn.frame =CGRectMake(100,100, 200, 200);

    imgBtn.backgroundColor = [UIColorgrayColor];

    [imgBtnsetTitleColor:[UIColorblackColor] forState:UIControlStateNormal];

    [imgBtnsetTitle:@"上传头像"forState:UIControlStateNormal];

    [imgBtnaddTarget:selfaction:@selector(uploadImage)forControlEvents:UIControlEventTouchUpInside];

    [self.viewaddSubview:imgBtn];

}



#pragma mark - 上传头像

- (void) uploadImage

{

    UIActionSheet * sheet = [[UIActionSheetalloc]initWithTitle:nildelegate:selfcancelButtonTitle:@"取消"destructiveButtonTitle:nilotherButtonTitles:@"相机",@"相册",nil];

    [sheet showInView:self.view];

}



#pragma mark - sheet 代理方法

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

{

    NSLog(@"%ld",buttonIndex);

    if (buttonIndex == 0)

    {//相机

        UIImagePickerController *aImgPickerCtrl = [[UIImagePickerControlleralloc] init];

        aImgPickerCtrl.delegate = self;

        [aImgPickerCtrl setAllowsEditing:YES];

        

        if (![UIImagePickerControllerisSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]){

            [aImgPickerCtrl setSourceType:UIImagePickerControllerSourceTypeSavedPhotosAlbum];

            

        }

        else

        {

            [aImgPickerCtrl setSourceType:UIImagePickerControllerSourceTypeCamera];

        }

        

        [selfpresentViewController:aImgPickerCtrl animated:YEScompletion:Nil];

        

    }

    if (buttonIndex == 1)

    {//相册

        

        UIImagePickerController *aImgPickerCtrl = [[UIImagePickerControlleralloc] init];

        aImgPickerCtrl.sourceType =UIImagePickerControllerSourceTypePhotoLibrary;

        [aImgPickerCtrl setAllowsEditing:YES];

        

        aImgPickerCtrl.delegate = self;

    }

}



#pragma mark - ImagePicker 代理方法

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

{

    [picker dismissViewControllerAnimated:YEScompletion:Nil];

    

    UIImage *aImage = [infoobjectForKey:UIImagePickerControllerEditedImage];

    

//    NSData *imageData = UIImagePNGRepresentation(aImage);

    

    [imgBtnsetImage:aImage forState:UIControlStateNormal];

    [imgBtnsetTitle:@" "forState:UIControlStateNormal];


}


@end


0 0
原创粉丝点击