通过委托传递数值,搞了大半天,终于结束了这个恶魔,现在总结下:

view1.h

#import <Foundation/Foundation.h>

@protocol setAppControllerDelegate;

@interface view1 : NSObject {

//id _delegate;

PreferenceController *preferenceController;

NSObject<setAppControllerDelegate>*m_appControllerDelegate;

}

-(void)changeBgColor:(NSColor*)color;

- (IBAction)showPreferencePanel:(id)sender;

@end

view1.m

#import "AppController.h"

@implementation AppController

-(void)changeBgColor:(NSColor*)color;

{

NSLog("通过委托传过来的颜色值为:%@",color);

}

@end

view2.h

#import <Foundation/Foundation.h>

@classAppController;

@protocol ChangeViewBgColorDelegate;

@interface PreferenceController : NSWindowController {

AppController*b;

id<ChangeViewBgColorDelegate>m_dChangeViewBgColorDelegate;

}

@property(nonatomic,retain) id m_dChangeViewBgColorDelegate;

@end

//代理申明

@protocol ChangeViewBgColorDelegate<NSObject>

-(void)changeBgColor:(NSColor*)color;

@end

view2.m

#import "PreferenceController.h"

#import "AppController.h"

@implementation PreferenceController

@synthesize m_dChangeViewBgColorDelegate;

- (id)init

{

if (![superinitWithWindowNibName:@"preferences"]) {

[self window];

b = [[AppController alloc] init];

self.m_dChangeViewBgColorDelegate = b;

//通过代理传递一个颜色值为blue的值

[m_dChangeViewBgColorDelegatechangeBgColor:blueColor];

}

- (void)dealloc{

[b release];

[super dealloc];

}

@end

转载于:https://www.cnblogs.com/firstWolf/archive/2012/07/20/delegate.html

cocoa 坑爹的委托相关推荐

  1. Cocoa如何应用设计模式

    在Cocoa中到处都可以找到设计模式的应用,基于模式的机制或架构在Cocoa框架和Objective-C运行环境及语言中是很常见的.Cocoa经常把自己与众不同的工作机制建立在模式上,它的设计受到诸如 ...

  2. Objective-C 基础教程——入门

    来自 http://www.runoob.com/w3cnote/objective-c-tutorial.html Objective-C 是一种简单的计算机语言,设计为可以支持真正的面向对象编程. ...

  3. Swift互用性:采用Cocoa设计模式(Swift 2.0版)-b

    本页包含内容: 委托(Delegation) 错误处理(Error Handling) 键值观察(Key-Value Observing) Target-Action模式(Target-Action) ...

  4. 分享一次与SharpDX坑爹Bug刚正面的过程

    和SharpDX坑爹的Variant刚正面 几个月前我写了这篇文章<.NET中生成动态验证码>文章,其实里面藏着一个大坑.运行里面的代码,会发现运行的 gif图片并没有循环播放: 细心的网 ...

  5. Cocoa编程开发者手册

    Cocoa编程开发者手册(Objective-C权威著作超一流翻译阵容) [美] 奇斯纳尔(Chisnall,D.)  著 霍炬等 译 ISBN 978-7-121-12239-2 2013年7月出版 ...

  6. 苹果官方指南:Cocoa框架(2)(非原创)

    原文链接:http://mobile.51cto.com/iphone-269848_1.htm Mac OS X包含多个Cocoa框架,苹果和第三方厂商也随时会发布更多的框架.无论Cocoa框架有多 ...

  7. Cocoa Application-基础

    Cocoa Cocoa基于Quartz,采用Painter model来绘制 Painter model主要是在一个连续的绘制操作中会将一层的绘制应用于一个output 画布(canvas)上 在添加 ...

  8. [Cocoa]苹果 Cocoa 编码规范

    [Cocoa]苹果 Cocoa 编码规范 罗朝辉(http://blog.csdn.net/kesalin) CC许可,转载请注明出处 本文档下载:点击这里 > Code Naming Basi ...

  9. 苹果 Cocoa 编码规范

    本文转载自http://blog.csdn.net/kesalin Code Naming Basics 代码命名基础 在面向对象软件库的设计过程中,开发人员经常忽视对类,方法,函数,常量以及其他编程 ...

最新文章

  1. 【深度学习】一文看尽深度学习各领域最新突破
  2. 5G 标准 — 3GPP
  3. 学好python能干嘛-学会Python后都能做什么?网友们的回答简直不要太厉害
  4. APP鉴赏之网易云音乐
  5. Application log save debug - how log data is persisted to database table
  6. 【Elasticsearch】ES内存满问题排查思路
  7. 大话数据结构 -04-3 队列
  8. 【java】创建一个Frame,字体的颜色可以用按钮改变
  9. 渗透测试:metasploit+ms-17-010+Windows2008r2
  10. C# 异步函数同时执行后再执行其它函数async
  11. Atitit atttilax创造的新概念与模式 xaas xaaK
  12. 如何关闭方正软件保护卡
  13. opencv warp(扭曲)球面投影的原理
  14. Ubuntu 18.04 安装搜狗拼音输入法出现乱码的
  15. 了不起的大中国—移动支付
  16. 从Mac的GUID分区谈起
  17. ubuntu14.04安装nvidia-GTK-1060驱动后黑屏
  18. python不同曲线设置标签_python 绘制拟合曲线并加指定点标识的实现 Python怎么实现非线性的拟合...
  19. Bash 单行注释与多行注释
  20. 「读书」人生十二法则

热门文章

  1. 【AGC014E】Blue and Red Tree
  2. 分布式锁--Redis小试牛刀
  3. iis 程序池设置及详解-20180720
  4. 【uva10829-求形如UVU的串的个数】后缀数组+rmq or 直接for水过
  5. Mybatis批量添加对象List
  6. 在移动端禁用长按选中文本功能
  7. 压力测试工具Ab简介
  8. 看图说话:OpenGL模型矩阵和投影矩阵
  9. React Native Windows 环境搭建(适合有Android 开发基础的同学)
  10. 第三周项目一-个人所得税计算器