• iOS之设置头像(访问系统相册、本地上传)


      1  
      2 
      3 1.
      4 
      5 UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:                               @"设置头像" delegate:self cancelButtonTitle:@"取消"                       destructiveButtonTitle:nil otherButtonTitles:@"选择本地图片",@"拍照", nil];
      6 
      7     [actionSheet showInView:self.view];
      8 
      9  
     10 
     11 //2.实现相应代理事件,代理UIActionSheetDelegate,方法如下
     12 
     13  
     14 
     15 - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:                                                       (NSInteger)buttonIndex {
     16 
     17     // 相册 0 拍照 1
     18 
     19     switch (buttonIndex) {
     20 
     21         case 0:
     22 
     23             //从相册中读取
     24 
     25             [self readImageFromAlbum];
     26 
     27             break;
     28 
     29         case 1:
     30 
     31             //拍照
     32 
     33         [self readImageFromCamera];
     34 
     35         break;
     36 
     37         default:
     38 
     39         break;
     40 
     41     }
     42 
     43 }
     44 
     45  
     46 
     47 //3.实现从相册读取图片功能,代码如下
     48 
     49  
     50 
     51  
     52 
     53 //从相册中读取
     54 
     55 - (void)readImageFromAlbum {
     56 
     57     //创建对象
     58 
     59     UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
     60 
     61     //(选择类型)表示仅仅从相册中选取照片
     62 
     63     imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
     64 
     65     //指定代理,因此我们要实现UIImagePickerControllerDelegate,                                                 UINavigationControllerDelegate协议
     66 
     67     imagePicker.delegate = self;
     68 
     69     //设置在相册选完照片后,是否跳到编辑模式进行图片剪裁。(允许用户编辑)
     70 
     71     imagePicker.allowsEditing = YES;
     72 
     73     //显示相册
     74 
     75     [self presentViewController:imagePicker animated:YES completion:nil];
     76 
     77 }
     78 
     79  
     80 
     81 //4.实现拍照功能
     82 
     83  
     84 
     85 - (void)readImageFromCamera {
     86 
     87     if ([UIImagePickerController isSourceTypeAvailable:                                           UIImagePickerControllerSourceTypeCamera]) {
     88 
     89         UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];         imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;         imagePicker.delegate = self;
     90 
     91         imagePicker.allowsEditing = YES;
     92 
     93         //允许用户编辑
     94 
     95         [self presentViewController:imagePicker animated:YES completion:nil];
     96 
     97     } else {
     98 
     99         //弹出窗口响应点击事件
    100 
    101         UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"警告"                         message:@"未检测到摄像头" delegate:nil cancelButtonTitle:nil                                                 otherButtonTitles:@"确定", nil];
    102 
    103         [alert show];
    104 
    105     }
    106 
    107 }
    108 
    109  
    110 
    111 //5.图片完成处理后提交,代理方法UIPickerControllerDelegate
    112 
    113  
    114 
    115 //图片完成之后处理
    116 
    117 - (void)imagePickerController:(UIImagePickerController *)picker        didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo {
    118 
    119     //image 就是修改后的照片
    120 
    121     //将图片添加到对应的视图上
    122 
    123     [_headImageView setImage:image];
    124 
    125     //结束操作
    126 
    127     [self dismissViewControllerAnimated:YES completion:nil];
    128 
    129 }
    130 
    131  
  • 相关阅读:
    linux-nginx
    mysql数据库的多实例与主从同步。
    MySQL的命令
    Mysql的管理
    linux之mariadb的安装
    Linux进程基础
    linux网络基础
    解锁HMC8及HMC9的root用户
    RHEL8.0-beta-1.ISO
    RHEL6误安装RHEL7的包导致glibc被升级后系统崩溃处理方法
  • 原文地址:https://www.cnblogs.com/rglmuselily/p/5166203.html
Copyright © 2020-2023  润新知