[iOS]细小的知识点

来源:互联网 发布:fft算法c语言 编辑:程序博客网 时间:2024/04/29 18:03

1.重写UIViewController里面的(NSUInteger)supportedInterfaceOrientations方法可以控制屏幕方向

- (NSUInteger)supportedInterfaceOrientations{    /**     *  UIInterfaceOrientationMaskPortrait : 竖屏(正常)     *  UIInterfaceOrientationMaskPortraitUpsideDown : 竖屏(上下颠倒)     *  UIInterfaceOrientationMaskLandscapeLeft : 横屏向左     *  UIInterfaceOrientationMaskLandscapeRight : 横屏向右     *  UIInterfaceOrientationMaskLandscape : 横屏(横屏向左\横屏向右)     *  UIInterfaceOrientationMaskAll : 全部方向(包括上面的所有情况)     */    return UIInterfaceOrientationMaskPortrait;}

2.播放视频可以用MediaPlayer.framework库或者AVFoundation.framework库

3.MPMoviePlayerViewController在程序进入后台时会接受到UIApplicationDidEnterBackgroundNotification的通知,此时会关闭model形式弹出的控制器。若
[[NSNotificationCenter defaultCenter] removeObserver:self
name:UIApplicationDidEnterBackgroundNotification object:nil];

移除通知,model形式弹出的视频播放控制器不会关闭,而是暂停在几秒之前。

4.选择相册或拍照上传

#pragma mark - 上传相册中的图片(直接上传二进制数据)- (void)uploadImageFromAlbum{    UIImagePickerController *ipc = [[UIImagePickerController alloc] init];    // 设置图片的来源    // 1.相机 UIImagePickerControllerSourceTypeCamera    // 2.相册(图片库) UIImagePickerControllerSourceTypePhotoLibrary    ipc.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;    ipc.delegate = self;    [self presentViewController:ipc animated:YES completion:nil];}#pragma mark 选择图片的代理方法- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{    // 0.销毁图片选择控制器    [picker dismissViewControllerAnimated:YES completion:nil];    // 1.得到用户选中的图片    UIImage *image = info[UIImagePickerControllerOriginalImage];    // 2.上传图片    [self uploadImage:image];}- (void)uploadImage:(UIImage *)image{    // 1.创建请求    NSURL *url = [NSURL URLWithString:@"http://192.168.1.200:8080/MJServer/upload"];    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];    // 2.设置(指定)所要上传文件的路径    NSData *data = UIImagePNGRepresentation(image);    [request setData:data withFileName:@"minion.png" andContentType:@"image/png" forKey:@"file"];    // 3.设置其他请求参数    [request setPostValue:@"zhangsan" forKey:@"username"];    // 3.发送请求    [request startAsynchronous];    // 4.监听请求    [request setCompletionBlock:^{        NSLog(@"上传完毕");    }];}

5.UIView及其子类在通过xib创建以及通过代码创建时调用的函数
UIView及其子类通过代码创建以及通过xib、storyboard创建时调用的方法不同。

  • 通过代码创建时会调用以下方法:
    - (instancetype)initWithFrame:(CGRect)frame;

  • 通过xib、storyboard创建会调用以下方法:
    - (id)initWithCoder:(NSCoder *)aDecoder
    - (void)awakeFromNib

0 0
原创粉丝点击