当前位置:  编程技术>移动开发
本页文章导读:
    ▪个人对署理Delegate的理解        个人对代理Delegate的理解 代理相当于一个抽象类(里面有一部分功能已经实现,而有一部分,则需要你的代码去具体实现。使用代理,相当于当某个时间触发时让系统调用你自己的实现。I.........
    ▪ Cocoa 的器皿[转载自cocoachina.com]        Cocoa 的容器[转载自cocoachina.com] 容器是让多数程序员又爱又恨的东西。在Cocoa中,容器是如此的简单易用以至于您一旦用过,就会对它们“爱不释手”。Cocoa中的容器类主要有这么几个:NSSt.........
    ▪ Activity其间实现动画的切换       Activity之间实现动画的切换 在startActivity 后调用 overridePendingTransition(int enterAnim,int exitAnim),就可以实现Activity之间的动画,其中enterAnim 是下一个Activity的enter动画效果,exitAnim 是当前Actitvity退出.........

[1]个人对署理Delegate的理解
    来源: 互联网  发布时间: 2014-02-18
个人对代理Delegate的理解
代理相当于一个抽象类(里面有一部分功能已经实现,而有一部分,则需要你的代码去具体实现。使用代理,相当于当某个时间触发时让系统调用你自己的实现。


Iphone开发中,Apple提供了xcode开发平台和Interface Builder界面开发工具。开发人员可以先用IB开发界面,而后用xcode开发代码,最后将两者连在一起,实现具体功能。

当视图创建好后,需要用有自己的类去实现一个View Controller.而这个Controller和View 通讯的关键在于Delegate. 每个Delegate有要求实现的方法.如:你有一个scrollView的对象,在滚动的时候,你如果希望它滚动完全之后,进行操作,你就需要给这个scrollView的对象指定一个delegate(实现了UIScrollViewDelegate),这个delegate已经实现了scrollViewDidEndDecelerating:这个函数,这样,当scrollView对象滚动结束之后,你的delegate的scrollViewDidEndDecelerating:函数就会得到响应。

个人理解是Iphone开发是一种基于MVC的开发模式, 而Delegate是联系View和Controller的桥梁.Controller可以通过Delegate传递信息给View(如文本框内容什么的)
1 楼 jyasa 2010-07-15  
那就如同老J2me里的所有View继承一个顶层抽象类的手法去实现View Controller一样.
那这种就是MVC架构模式.Delegate我暂且理解为View和Controller的桥梁。
但你说Controller可以通过Delegate传递信息给文本框内容什么的我就不能理解了。难道说Delegate和Iphone里的文本框控件建立了直接关系?那我可以理解为文本框继承或者实现了Delegate的接口么。

或许意思我表达错了,但直接传递给文本框确实有点。希望你能明白我的意思
2 楼 xupf1977 2010-07-16  
jyasa 写道
那就如同老J2me里的所有View继承一个顶层抽象类的手法去实现View Controller一样.
那这种就是MVC架构模式.Delegate我暂且理解为View和Controller的桥梁。
但你说Controller可以通过Delegate传递信息给文本框内容什么的我就不能理解了。难道说Delegate和Iphone里的文本框控件建立了直接关系?那我可以理解为文本框继承或者实现了Delegate的接口么。

或许意思我表达错了,但直接传递给文本框确实有点。希望你能明白我的意思


我大概明白你的意思。View Controller在Delegate定义的方法(需Override)里面处理文本框内容的修改什么的(跟文本框本身没有直接关系,我只是举个例子)。

    
[2] Cocoa 的器皿[转载自cocoachina.com]
    来源: 互联网  发布时间: 2014-02-18
Cocoa 的容器[转载自cocoachina.com]
容器是让多数程序员又爱又恨的东西。在Cocoa中,容器是如此的简单易用以至于您一旦用过,就会对它们“爱不释手”。Cocoa中的容器类主要有这么几个:NSString、NSArray、NSDictionary、NSSet和NSIndexSet等,它们都是Foundation Framework的一部分。

为什么人们会对Cocoa的容器“爱不释手”呢?

原因一:NSArray、NSDictionary、NSSet都不强制其内部元素类型的一致性。举个简单的例子:

NSString *aString = [NSString stringWithString:@"This is a demo."];

NSNumber *aNumber = [NSNumber numberWithInteger:0];

NSArray *anArray = [[NSArray alloc] initWithObjects:aString, aNumber, nil];

在上述例子中,我们首先建立了一个NSString对象,然后又建立了一个NSNumber对象,最后我们将这两个NSString和NSNumber对象都“塞”到了一个NSArray对象中。

有够爽吧?连想都别想,什么东西都能往里面装(基本类型、结构体除外)!

原因二:容器类的“可修改”和“不可修改”



上面我们展示的NSString、NSArray、NSDictionary、NSSet以及NSIndexSet等,都是容器的“不可修改”的版本。所谓的“不可修改”,指的是这个容器一旦被创建以后,我们就不可以通过代码修改它的集合。那如果我们需要修改(例如添加、删除、替换)这些容器的元素,该怎么办呢?

Cocoa中几乎所有的容器类,都提供了另外一个“可修改”的版本。例如:继承自NSString的NSMutableString、继承自NSArray的NSMutableArray、继承自NSDictionary的NSMutableDictioanry、继承自NSSet的NSMutableSet以及继承自NSIndexSet的NSMutableIndexSet等。这些“可修改”的版本提供了简单直观的方法,用来修改其内部的元素。例如:

NSString *aString = [NSString stringWithString:@"This is a demo."];

NSNumber *aNumber = [NSNumber numberWithInteger:0]; 

NSMutableArray *aMutableArray = [NSMutableArray array];

[aMutableArray addObject:aString];

[aMutableArray addObject:aNumber];

[aMutableArray removeObjectAtIndex:0];

[aMutableArray removeAllObjects];

在上述代码中,第一、二行建立了一个NSString对象和一个NSNumber对象。第三行建立了一个NSMutableArray对象(也就是一个“可修改”的NSArray对象)。第四、五行通过-addObject:方法分别将第一、二行建立的NSString对象和NSNumber对象加入了这个“可修改”的NSArray里。第六行则是根据我们给定的索引号0,删除了数组中的第一个元素。第七行的-removeAllObjects最后一口气将数组中存在的所有元素统统删除(置空数组)。

    
[3] Activity其间实现动画的切换
    来源: 互联网  发布时间: 2014-02-18
Activity之间实现动画的切换
在startActivity 后调用 overridePendingTransition(int enterAnim,int exitAnim),就可以实现Activity之间的动画,
其中enterAnim 是下一个Activity的enter动画效果,exitAnim 是当前Actitvity退出的动画效果



    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3