IOS-7步学会用代理】的更多相关文章

代理:又叫委托 自己不能去办的事委托给别人去办 之前学过的 UIAlertView UITextField都是使用了代理 反向传值代理 代理Block 写代理的步骤 需要帮忙的人(请求帮代饭的人) 1.声明代理里面的的协议方法( @protocol) 2.声明协议的属性 3.什么时候需要触发这个代理方法 4.通过协议的属性 调用代理方法(委托) 帮忙的人做的事(帮忙带饭的人) 5.导入协议 6.在初始化有代理方法的地方,挂上代理(答应帮带饭) 7.写上代理方法 等待被执行 1.申明代理方法(不要…
Java基础:三步学会Java Socket编程 http://tech.163.com 2006-04-10 09:17:18 来源: java-cn 网友评论11 条 论坛        第一步 充分理解Socket  1.什么是socket  所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄.应用程序通常通过"套接字"向网络发出请求或者应答网络请求.  以J2SDK-1.3为例,Socket和ServerSocket类库位于ja…
tortoisegit 7步 学会git分支 做自己的产品,分支还是很重要的.例如,我发布了一个app,但是有bug,又想做新功能,怎么办呢?如果只在一个git上开发的话,bug会越来越多,原来bug没改完,新功能开发,又会产生新的bug.这样的话,bug永远改不完,版本发布会一拖再拖. 正确的做法,主分支,开发新功能,创建的分支改bug,定期的将分支合并到主分支,对外发布的版本都新分支,改bug的版本,属于稳定版的.发版本成阶梯状.下面介绍一下用tortoisegit创建git分支的方法,个人…
前言 在 ios上边使用地图库的同学肯定遇到过这样的问题:吹出框只能设置title和subtitle和左右的view,不管是百度地图还是高德地图还是自带的 google地图,只提供了这四个属性,如果想添加更多的view,只能自定义.可是,类库只能看到.h文件,.m都看不到,这让新手比较蛋疼,庞大的地 图类库一时半会摸不着头脑,从头再学还需要时间,本文就教大家快速制作一个属于自己的 CalloutView!等你一步一步调通后,再回过头来使用系统自带的方法设置callout,就会领悟这个过程. 正文…
前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liunx服务器:笔者用的是[搬瓦工]的VPS服务器(CDN加速,支持支付宝,多机房选择)--低配版[2.5$每月,29.99$每年],需要的同学点此了解详情 再推荐一个VPS服务器 Vultr.com (和 搬瓦工 差不多,也支持支付宝,但它支持月付,每月仅 2.5$ ) 一个Linux终端管理工具:笔者…
之前用跨平台开发工具做了一个应用,平台可以同时生成安卓版和苹果版,想着也把这应用上架到App Store试试,于是找同学借了个苹果开发者账号,但没那么简单,还要用到Mac电脑的钥匙串申请发布证书和上传ipa,可没有Mac,同学的大老远的也不方便拿过来用,然后捣鼓了个虚拟机,卡的我怀疑人生,后面找到了一个工具,在Windows环境下终于上传成功,把我的iOS app上架流程分享给各位. 下面从七个步骤进行详细介绍! 1.创建唯一标示符App IDs 2.申请发布证书 3.申请发布描述文件 4.iT…
1. 什么是UIApplication UIApplication 对象是应用程序的象征,不能手动创建,不能 alloc init,一个应用程序只允许 一个 . 每个应用都有自己的 UIApplication 对象,而且是单例. 通过 [UIApplication shareApplication] 可以获取这个单例对象. 弄成单例的原因: UIApplication 对象是用来设置应用全局信息的,一个应用程序如果有很多 UIApplication 对象,都不知道听谁的. 一个iOS程序启动后创…
有几篇博客写到了怎么实现环形进度条,大多是使用Core Graph来实现,实现比较麻烦且效率略低,只是一个小小的进度条而已,我们当然是用最简单而且效率高的方式来实现.先看一下这篇博客,博客地址:http://www.brighttj.com/ios/ios-implement-loop-progress.html这篇博客写的不错,不过看上去还是略微复杂了,我自己根据自己的思路整理了一下,当然目的是为了更加简洁易懂. 一:先制作一个不带颜色渐变的进度条 自定义一个cycleView,在.m 中实现…
1.按住home键怎么保存程序的运行状态: 监听按home键的时候程序挂起的状态(通知),然后让其重新进入程序[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillResignActive:)name:UIApplicationWillResignActiveNotification object:nil]; 2.当程序运行时 按下home键 iOS会调用哪个代理: .-…
(一)代理模式 应用场景:当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现.优势:解耦合敏捷原则:开放-封闭原则实例:tableview的 数据源delegate,通过和protocol的配合,完成委托诉求.列表row个数delegate自定义的delegate (二)观察者模式应用场景:一般为model层对,controller和view进行的通知方式,不关心谁去接收,只负责发布信息.优势:解耦合敏捷原则:接口隔离原则,开放-封闭原则实例:Notification通知中心,…
一.为什么要使用动态代理         当一个对象或多个对象实现了N中方法的时候,由于业务需求需要把这个对象和多个对象的N个方法加入一个共同的方法,比如把所有对象的所有方法加入事务这个时候有三种方法:         方法一:一个一个对象一个一个方法去加,很显然这个方法是一个比较笨的方法.         方法二:加一个静态代理对象将这个静态代理对象实现要加事务对象的接口.然后在静态代理对象里面每个方法里面加上事务.         方法三:使用动态代理对象,进行动态的加载事务.      …
一.导航控制器的代理 1.UINavigationController的delegate属性 2.代理方法 1> 即将显示新控制器时调用 /* navigationController : 导航控制器 viewController : 即将显示的新控制器 */ - (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)…
//单例 //.h + (Instannce *)shareInstance; //.m static Instannce *instance = nil; @implementation Instannce //定义一个创建单例对象的方法 + (Instannce *)shareInstance { if (instance == nil) { instance = [[Instannce alloc] init]; } return instance; } //使用alloc的时候调用的方法…
1.安装gulp 安装gulp到全局:npm install -g gulp 安装gulp到某个项目:npm install --save gulp 注意:请先安装nodejs(自带npm) 2.创建gulpfile.js //在你的项目根目录下创建gulpfile.js,代码如下: // 引入 gulp var gulp = require('gulp'); // 引入组件 var htmlmin = require('gulp-htmlmin'), //html压缩 imagemin = r…
一.简介 hue是一个开源的apache hadoop ui系统,由cloudear desktop演化而来,最后cloudera公司将其贡献给了apache基金会的hadoop社区,它基于python框架django实现的. 通过使用hue,我们可以使用可视化的界面在web浏览器上与hadoop集群交互来分析处理数据,例如操作hdfs上的数据,运行MapReduce Job,查看HBase中的数据   二.安装 (1)下载 http://archive.cloudera.com/cdh5/cd…
第一步:自己定义属性 第二步:自己定义控件解析属性 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcm5adW9adW8=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt=""> 第三步:在XML文件里使用自己定义控件和自己定义属性…
一.目的 将不同服务器上的表合并到另外一个服务器上.例如:将服务器1上的表A和服务器2上的表B,合并到服务器3上的表C 要求:表A需要被裁剪(去掉不必要的字段).表B需要增加一些字段 二.使用方法 (1)在服务器3上的数据库中新建一张表C(符合实际系统设计的字段) (2)新建表输入,连接服务器1,通过获取SQL语句选择需要使用的表,也可以选择一些字段 (2)同理,新建表输入,连接服务器2,通过获取SQL语句选择需要使用的表,也可以选择一些字段 (3)新建两个排序记录 (4)选择要排序的字段 (5…
Spring-DM是什么 Spring-DM 指的是Spring Dynamic Modules. dm Server 是一个完全模块化部署的,基于OSGi的Java服务器,为运行企业Java应用和Spring应用提供更加强大的灵活性和可靠性.SpringSource应用平台是构建在Spring.OSGi和Apache Tomcat之上的应用服务器,这个新的应用服务器摒弃了原有的Java EE服务器标准,自然而然地将Spring编程模型展现其中,随之而来的还有一套基于OSGi内核构建的全新部署和…
[外链图片转存失败(img-b0GOhxRY-1563571645197)(https://upload-images.jianshu.io/upload_images/11158618-ba249b916a32ba91.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)] JavaScript 是一种轻量级的编程语言 可插入 HTML 页面的编程代码 JavaScript的用法,输出,语句,注解,变量,数据类型,函数,运算符,比较,条件语…
[外链图片转存失败(img-yfi1VPyy-1563434266398)(https://upload-images.jianshu.io/upload_images/11158618-fc8784aa1868fbb5.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)] CSS3 完全向后兼容 选择器.框模型.背景和边框.文本效果.2D/3D转换.动画.多列布局.用户界面 [外链图片转存失败(img-v3cEr47w-156343426…
[外链图片转存失败(img-zk4xNuy1-1563431241992)(https://upload-images.jianshu.io/upload_images/11158618-4e9cac1478aa949a.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)] 什么是HTML HTML是用来描述网页的一种语言 叫超文本标记语言 HTML不是一种编程语言,而是一种标记语言 一套标记标签 使用这些标记标签来描述网页 HTML文档也…
[外链图片转存失败(img-rmJXMGFs-1563388353181)(https://upload-images.jianshu.io/upload_images/11158618-dd813ed6e7f957c9.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)] 字符串新特性 变量和参数新特性 函数新特性 匿名函数 for of循环 TypeScript语言中的面向对象特性 理解ES5,ES6,JAVASCRIPT,TYPESC…
AngularJS是一个JavaScript框架 一个用JavaScript编写的库 [外链图片转存失败(img-JUTh171K-1563341248796)(https://upload-images.jianshu.io/upload_images/11158618-fa50829f94107980.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)] AngularJS 通过 ng-directives 扩展了 HTML 表达式 {…
Vuejs是一个构建数据驱动的web界面的库,通过api实现响应的数据绑定和组合的视图组件,Vue.js的核心是一个响应的数据绑定系统,它让数据与DOM保持同步非常简单,一旦创建了绑定,DOM 将与数据保持同步. Vue.js 安装 <script> 标签 CDN NPM # 最新稳定版本 $ npm install vue # 最新稳定CSP兼容版本 $ npm install vue@csp vue.js提供了一个官方命令工具,可以快速搭建大型单页应用. # 全局安装 vue-cli $…
preload和prefetch是什么? 我们常说的preload和prefetch,是link标签rel里新增的两种值,用于让浏览器提前加载指定的资源,它们会先被缓存(属于http cache缓存),达到优化网页速度的目的. 本文将以代码示例的形式一步步讲解preload和prefetch. 1.准备四个文件:index.html,index.js,prefetch.js,preload.js index.html <!DOCTYPE html> <html lang="en…
“代理”--在iOS的开发设计中是一个非常重要的概念,同时又是十分基础的知识.所以,掌握“代理”势在必行! 以下,结合一个具体的例子,详细认识“代理”: 1, 图例解释: ①:定义两个文本输入框UITextFiled,上面一个,下面一个. ②:要求:在下面的输入框中国输入内容时,上面的文本框中实时.同步显示: ③:下面的文本输入框以及紫色的背景部分要求是一个独立的,抽取出来的“类”,直接在视图控制器中初始化出一个UIView,其中有一个“UITextFiled”和一个提示“UILable”. 2…
之前接到一些ios测试的时候,一些应用往往由于这样那样的原因(比如自实现的发包函数)导致直接使用本地ios系统的代理很难将数据代理到主机的burp或findler中,本文提供了一种解决该问题的途径 原理,实际上是多做了一层代理,既然ios中自带的代理无法将一些自制的函数的发包抓获,我们就将ios中的数据牵引到安卓中,通过安卓中的iptables将制定的应用的数据包进行转发,此时需要先用wireshark将应用使用的端口先捕获,测试安卓手机其实是充当了一个可随意配置转发的高级路由(当然此处也可以使…
MVC 模型-视图-控制器(MVC)设计模式 MVC根据角色划分类,涉及到三个角色: Model:模型保存应用程序的数据. View:视图是模型的可视化表示以及用户交互的控件. Controller:控制器是一个协调所有工作的中介者.它访问模型中的数据并在视图中展示它们,同时它们还监听事件和操作数据. 单例设计模式 单例设计模式可以确保对于一个类只有一个实例(对象)存在,这个对象有一个全局的访问点.通常采用懒加载的方式在第一次用到对象的时候才去创建它. 如何创建一个单例: 如:在SortDeta…
近期为准备找工作面试,在网络上搜集了这些题,以备面试之用. 插一条广告:本人求职,2016级应届毕业生,有开发经验.可独立开发,低薪求职.QQ:895193543 1.简述OC中内存管理机制. 答:内存管理机制:使用引用计数管理,分为ARC和MRC,MRC需要程序员自己管理内存,ARC则不需要.但是并不是 所有对象在ARC环境下均不需要管理内存,子线程和循环引用并不是这样.与retain配对使用的是release,retain代表引用计 数+1,release代表引用计数-1,当引用计数减为0时…
在这里总结一些iOS开发中的小技巧,能大大方便我们的开发,持续更新. UITableView的Group样式下顶部空白处理 //分组列表头部空白处理 UIView *view = [[UIViewalloc] initWithFrame:CGRectMake(0, 0, 0, 0.1)]; self.tableView.tableHeaderView = view; UITableView的plain样式下,取消区头停滞效果 - (void)scrollViewDidScroll:(UIScro…