• ios 图片上传与压缩,UIImagePickerController设置中文


    普通效果

    1.添加协议

    <UIImagePickerControllerDelegate, UINavigationControllerDelegate>

    2.添加UIImagePickerController

    @property (nonatomic, strong) UIImagePickerController *imagePick;           //用于上传图片

    3.初始化UIImagePickerController

    self.imagePick = [[UIImagePickerController alloc]init];
        self.imagePick.delegate = self;

    4.弹框选择

    //选取相册内的图片
    - (void)changeHeadImageAction {
        UIAlertController *alert = [UIAlertController alertControllerWithTitle:nil message:nil preferredStyle:UIAlertControllerStyleActionSheet];
        //按钮:从相册选择,类型:UIAlertActionStyleDefault
        [alert addAction:[UIAlertAction actionWithTitle:@"从相册选择" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
            self.imagePick.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
            //        imagePick.mediaTypes = @[(NSString *)kUTTypeImage];
            self.imagePick.allowsEditing = YES;
            [self presentViewController:self.imagePick animated:YES completion:nil];
        }]];
        //按钮:拍照,类型:UIAlertActionStyleDefault
        [alert addAction:[UIAlertAction actionWithTitle:@"拍照" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
            if ([UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerCameraDeviceRear]) {
                self.imagePick.sourceType = UIImagePickerControllerSourceTypeCamera;
                [self presentViewController:self.imagePick animated:YES completion:nil];
            }else{
                NSLog(@"摄像头貌似不支持...");
            }
        }]];
        //按钮:取消,类型:UIAlertActionStyleCancel
        [alert addAction:[UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
            
        }]];
        [self presentViewController:alert animated:YES completion:nil];
    }

    5.实现协议方法

    // 取消选择照片
    - (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker{
        [picker dismissViewControllerAnimated:YES completion:nil];
    }
    
    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{
        
        [picker dismissViewControllerAnimated:NO completion:nil];
        UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
    
        //压缩照片,这个base64就是需要上传到服务器的图片数据
        [image drawInRect:CGRectMake(0, 0, 150, 266)];
        NSData *data = UIImageJPEGRepresentation(image, 0.0f);
        NSString *base64 = [data base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
           
    }
    
    -(void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated
    {
        viewController.navigationItem.rightBarButtonItem.tintColor = [UIColor whiteColor];
        viewController.navigationItem.leftBarButtonItem.tintColor = [UIColor whiteColor];
        //设置标题颜色
        NSDictionary *dic=[NSDictionary dictionaryWithObject:[UIColor whiteColor] forKey:NSForegroundColorAttributeName];
        self.navigationController.navigationBar.titleTextAttributes = dic;
    }
    
    - (void)doCancel:(id)b {
        NSLog(@"doCancel");
        [self.imagePick dismissViewControllerAnimated:YES completion:nil];
    }

    6.设置相册里面的文字为汉字

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
    //    [NSUserDefaults standardUserDefaults] setObject:@"zh-Hans" forKey:NSLangu;
        
        [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"zh-Hans", nil] forKey:@"AppleLanguages"];
        [[NSUserDefaults standardUserDefaults] synchronize];
    
        return YES;
    }

    然后在下面这个位置添加中文

  • 相关阅读:
    c++ ::和:
    c++ extern
    c++ cpp和hpp
    c++ include
    caffe调试
    caffe blob理解
    poj3126
    FFmpeg滤镜使用指南
    Android之Activity之间传递对象
    Server Tomcat v8.0 Server at localhost failed to start.
  • 原文地址:https://www.cnblogs.com/qiyiyifan/p/9155592.html
Copyright © 2020-2023  润新知