2016-2-20 周总结

//没有合理的计划让自己处于特别尴尬的境地,从现在开始要有合理的规划,每周的工作内容,每天的工作内容,每天及每周,每月的学习进度都要有一个清晰的计划.

一.block传值的使用.

1.现在有这样一个例子,需要将控制器b输入后的文字,传值到控制A的label上,如何用block实现?

//-----控制器b
//.h
typedef void (^ReturnText)(NSString *text);  //returnText是block的名称,text是传的参数

//定义block
@property (nonatomic,copy)ReturnText returnText;

//返回block方法
- (void)returnText:(ReturnText) returnText;

//.m

- (void)returnText:(ReturnText) returnText{

     self.returnText = returnText;
}

- (void)viewWillDisappear:(BOOL)animated{

    [super viewWillDisappear:animated];
   //设置block值

    if (self.returnText ){//不为空,就是控制器A需要调用它,否则此block为空
      self.retureText(text);
   }
}
//控制器A调用控制器b block
 控制器b *b = [[控制器b alloc] init];

    [b returnData:^(NSString *text) { //这段是关键代码,如果不调用它,block为空

       self.text = text;
    }];
       [self.navigationController pushViewController:b animated:YES];

二.相机与相册的使用及添加相册逻辑分析

1.1相机与相册的使用

//创建相机,相册
UIImagePickerController *cameraPc = [[UIImagePickerController alloc] init];

cameraPc.delegate = self;

cameraPc.sourceType = UIImagePickerControllerSourceTypeCamera;        //相机

cameraPc.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; //相册

[self presentViewController:cameraPc animated:YES completion:nil];

1.2代理回调方法

需要导入#import <MobileCoreServices/MobileCoreServices.h>框架,在framwork添加并导入头文件

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{

    [picker dismissViewControllerAnimated:YES completion:nil];

    NSString *mediaType = info[UIImagePickerControllerMediaType];

    UIImage *tempImg;

    if ([mediaType isEqualToString:(__bridge NSString *)kUTTypeImage]){  

        /* Let‘s get the metadata. This is only for

         images. Not videos */

        NSDictionary *metadata = info[UIImagePickerControllerMediaMetadata];

        UIImage *theImage = info[UIImagePickerControllerOriginalImage];//原图//界面显示

        tempImg = theImage;

    }

    [self.imageArray addObject:tempImg];

    [self handleShowSelectionAndCameraPhotos];

}

三.键盘返回事件和textView设置placeHolder(隐蔽文字)

//设置隐蔽文字,思路是创建一个label,放在textView上,并设置enable为NO,当文字发生改变时,隐藏label,否则显示.

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text

{
    //because Done is \n,
    if ([text isEqualToString:@"\n"]) {
        [textView resignFirstResponder];
        if (!textView.text.length) {
            self.placeholderL.text = @"请描述您的问题";
        }else{
            self.placeholderL.text = @"";
        }
        return NO;
    }
    return YES;

}
时间: 2024-12-20 19:32:29

2016-2-20 周总结的相关文章

2016/02/20 codes

<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title>2016/02/20</title></head><body><div id="mainDiv"> <div id = "content"> <div id = &qu

第20周

第19周是考试周,物理,物理实验,模电,英语一个接一个,外加一个模电课程设计 整个星期自然是准备考试去了,也没有干其他的什么事情.. 周一,准备物理,周二上午考物理,下午考物理实验. 周三,准备模电,周四下午,考模电. 周五白天,模电课程设计,周五晚上,准备英语,周六,考英语. 周日,完成模电课程设计,周日晚上开了年终总结大会,这个星期也就此结束... 第20周,忙机创,说起忙,其实也没有很忙,捣鼓捣鼓模型,捣鼓捣鼓程序框图,这么上10天的光阴就这么转瞬即逝.但是到最后看到所谓的成果,心好累~

2016/7/20 1:18:29 PyQT5 炫酷的左侧导航效果

2016/7/20 1:18:29  完整code from PyQt5.QtWidgets import (QApplication, QWidget, QHBoxLayout, QTreeWidget, QTreeWidgetItem, QGroupBox) from PyQt5.QtGui import QIcon, QPixmap from PyQt5.QtCore import QSize class Bar_Navigation(QWidget): def __init__(self

分布式技术一周技术动态 2016.03.20

分布式系统实践 1. 基于Mesos和Docker的分布式计算平台 https://mp.weixin.qq.com/s?__biz=MzAxMDgzOTA2Mw==&mid=402769128&idx=1&sn=cea3ad1357bd9312acf1768c0a493bfd&scene=1&srcid=0318BTuxT0fsFYwPjpeyuDOa&key=710a5d99946419d90fbc1e7600cce055b6e997d6afafc74c

工作周记 - 第五周 (2016/06/20 - 2016/06/25)

研发工作已经步入正轨 1.订单流程的设计,本周全体过了一遍订单流程,针对一些细节具体讨论,另外对于复杂的顶级权限账号详细细分,权限细分化 设计数据库模型,生成数据库表 2.coding,代码还是需要编写的,没什么好说的,就是正对业务的一些增删改查,具体的技术点会在非日志类写明 3.review,代码质量还是要严格把控的,对一些基本的业务逻辑进行review,看看业务有没有问题,代码有没有问题,能否做到最优化,其次规范要注意,当然有的公司会采取互相review的形式 似乎这周要说的不多,主要还是在

2016/09/20

1. Python序列化之pickle模块 - 用于[python特有的类型]和[python基本数据类型]间进行转换 - pickle模块提供了四个功能:dumps.dump.loads.load - json更加适合跨语言 基本数据类型的序列化  pickle仅适用于python 复杂类型的序列化 # import json # dic = {'k1': 'v1'} # print(dic, type(dic)) # # res = json.dumps(dic) # 将python的基本数

“耐撕”团队2016.04.20站立会议

1. 时间 : 10:20--10:40  共计20分钟 2. 人员 : Z   郑蕊 * 组长 (博客:http://www.cnblogs.com/zhengrui0452/), P 濮成林(博客:http://www.cnblogs.com/charliePU/), Q 齐嘉亮(博客:http://www.cnblogs.com/dendroaspis-polylepis/), M 张敏(博客:http://www.cnblogs.com/zhangminss/) 3.功能点清单. 序号

2016第42周学习小结

第42周晚上,十月又过半了,突然觉得人最重要的能力是把握时间抓住自己注意力的能力,时间是最稀缺的刚性资源,注意力稍不集中跑掉的的一分一秒都追不回来,用好自己的注意力.保持积极主动.上进的观念,才会让生活更有意义. 这一周处理好工作问题之外,主要是学习并实践了docker,本来还想写一篇更全面一些知识和缺陷的,因为这两天一些琐事耽搁没完成,就先暂时告一段落吧.docker作为一种很火的后台容器技术,用go语言开发,起初借助于linux 的namespace实现每个容器进程.内存.网络.文件系统.网

第四周(2016/03/20)

这周主要是做了一些JAVA的学习 静态关键字,静态代码块,单例设计模式,还有静态的应用,主要体现在做了一个处理数组的类 学习了子父类继承的关系,以及一些隐式的代码例如继承父类的构造函数默认第一行有空参数的super();  还有一些调用关系 学习了抽象类和应用,java的单继承,和多继承,还有实现接口,做了一些继承的代码测试什么的 关于模版方法模式,就是关于一些接口,interface 和implements  目前这个还没学完. 其实学的不会说很多,但是我觉得比较细节化,做一些相关的笔记和一些

学习进度(2016.3.20)

  第三周 所花时间(包括上课) 15小时 代码量(行) 400行 博客量(篇) 2篇 了解到的知识点 计算四则表达式的值,数据类型的转换