当前位置: 编程技术>移动开发
本页文章导读:
▪Unity3D汉语言视频教程【超清+精选】 Unity3D中文视频教程【超清+精选】
视频: Unity3D 公开课001__引擎综述 (康托耶夫)
http://v.youku.com/v_show/id_XMzQxOTU3NTY4.html
视频: Unity3D 公开课002__创建项目并发布 (康托耶夫)
http://v.youku.com/v_.........
▪ objective-c 键值观察者KVO方式的学习 objective-c 键值观察者KVO模式的学习KVO 键值观察者模式是cocoa的一个重要机制类似Notification模式。当被观察者属性发生改变时观察者做相应的操作。
新建一个Person类继承NSObject,添加name和age属.........
▪ Three20学习之施用TTableViewController实现简单的设置界面 Three20学习之使用TTableViewController实现简单的设置界面Three20对TableViewController 实现了更好的封装,使实现列表类的界面更加简单。现在我们使用TTTableViewController实现简单的设置界面。
新建一个.........
[1]Unity3D汉语言视频教程【超清+精选】
来源: 互联网 发布时间: 2014-02-18
Unity3D中文视频教程【超清+精选】
视频: Unity3D 公开课001__引擎综述 (康托耶夫)
视频: Unity3D 公开课001__引擎综述 (康托耶夫)
http://v.youku.com/v_show/id_XMzQxOTU3NTY4.html
视频: Unity3D 公开课002__创建项目并发布 (康托耶夫)
http://v.youku.com/v_show/id_XMzQxOTg5NjAw.html
视频: Unity3D 公开课003__关于unity3d所用的资源格式 (康托耶夫)
http://v.youku.com/v_show/id_XMzQyMzA4NzQ0.html
视频: Unity3D 公开课004__那些unity3d自带unitypackage的故事A(康托
http://v.youku.com/v_show/id_XMzQyNDcwNTQw.html
视频: Unity3D 公开课005__那些unity3d自带unitypackage的故事B (康托耶
http://v.youku.com/v_show/id_XMzQyNTY5NzQw.html
视频: Unity3D 公开课006__那些unity3d自带unitypackage的故事C (康托耶
http://v.youku.com/v_show/id_XMzQyNjU4MDE2.html
视频: Unity3D 公开课006__如何做漂亮的山体 (康托耶夫)
http://v.youku.com/v_show/id_XNDExMzE2MTM2.html
。。。。。。
http://www.soku.com/search_video/q_unity3d+公开课
1楼fth826595345昨天 21:19谢谢,先看看
[2] objective-c 键值观察者KVO方式的学习
来源: 互联网 发布时间: 2014-02-18
objective-c 键值观察者KVO模式的学习
利用keyPath判断是否是我们监听的属性发生了变化,如果是做相应的操作。
运行效果:
KVO 键值观察者模式是cocoa的一个重要机制类似Notification模式。当被观察者属性发生改变时观察者做相应的操作。
新建一个Person类继承NSObject,添加name和age属性,接着建一个PersonObserver类继承于NSObject同时实现
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context方法
具体如下:
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{ if ([keyPath isEqualToString:kPathName]) { NSLog(@"old name:%@ \nnew name:%@", [change objectForKey:@"old"], [change objectForKey:@"new"]); //Do something what you want to do //... return; } [super observeValueForKeyPath:keyPath ofObject:object change:change context:context]; }
利用keyPath判断是否是我们监听的属性发生了变化,如果是做相应的操作。
为对象添加观察者:
Person *person = [[Person alloc] init]; [person setName:@"old name"]; PersonObserver *observer = [[PersonObserver alloc] init]; [person addObserver:observer forKeyPath:@"name" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:nil]; [person setName:@"new name"]; [person removeObserver:observer forKeyPath:@"name"];
运行效果:
2013-03-05 16:08:04.347 learnOcKVO[10980:11303] old name:old name new name:new name
[3] Three20学习之施用TTableViewController实现简单的设置界面
来源: 互联网 发布时间: 2014-02-18
Three20学习之使用TTableViewController实现简单的设置界面
Three20对TableViewController 实现了更好的封装,使实现列表类的界面更加简单。现在我们使用TTTableViewController实现简单的设置界面。
新建一个工程,导入Three20库。新建一个类SettingsViewController继承于TTTableViewContoller,在
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil方法中对view进行初始化并设置table的数据,具体代码:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; if (self) { // Custom initialization self.title = @"设置"; self.tableViewStyle = UITableViewStyleGrouped; TTTableButton *userButton = [[TTTableButton alloc] init]; userButton.text = @"注销 cloay"; userButton.delegate = self; userButton.selector = @selector(actionLoginOut); self.dataSource = [TTSectionedDataSource dataSourceWithObjects:@"账号设置", userButton, @"网络设置", [TTTableControlItem itemWithCaption:@"只在wifi网络下加载图片" control:[[UISwitch alloc] init]], @"评价打分", [TTTableButton itemWithText:@"给我们打分,评价一把" delegate:self selector:@selector(pingjia)], [TTTableButton itemWithText:@"意见反馈" delegate:self selector:@selector(feedback)], nil]; } return self; }
大部分属性与TableViewController一样,Three20里封装了一些table UI控件,如按钮等,可以直接充当cell。
效果图:
最新技术文章: