MacDev 板


LINE

※ 引述《markzog21 (残羽星辰)》之铭言: : 主页mainView (只有一张image 按下去或是过两秒自动跳到userView) : │ : ˇ : 使用者主画面userView (程式各种功能) : 我的问题变成如果mainView就呼叫delegate 的话,会变成mainView 也有delegate的功能 : (如tabBar跟navagationBar) : 而我在userView的时候又需要delegate的功能 : 所以我想要说在我需要delegate的时候在把他叫出来,而只要秀mainView的时候(有点像程式一 : 开始的动画但因为我可能会包4个不太一样的application所以希望是用View的方式表现) : 就不用delegate : 然後我研究了很久都还是卡住...不知道是哪里的想法有误 : 上一篇的推文中说把delegate 设为nil就可以了,但我就是这里不懂= =" : 要从哪设还有哪可以重新呼叫之类的。 呃,您好像完全没有搞懂 delegate 的意思。 用最简单的方式来解释 delegate,假如说,B 是 A 的 delegate 好了, 代表 A 有一个成员变数指定到 B,但是 A 并不 retain B,而当 A 要做 某些事情的时候,会去问一下 B 要怎麽做。比方说,你生一个 UITableView 的时候,会给一个 delegate,所以当使用者点到了某个 cell 的时候,这个 table view 就会问 delegate 应该做什麽事情。 就你的文章来看,你似乎把 delegate 只当成 UIApplication 的 delegate 只把 delegate 当成某个特定物件,但是 delegate 是整个 Mac 与 iPhone 上非常常见的连接物件关系的方法,而不只是某个特定物件而已。 我们先来搞懂你所说的那个「有 tabbar 与 navigation bar 」的 delegate 是什麽意思。如此一来,我们需要先了解,一个 iPhone 应用程式 在启动的时候发生哪些事情。在应用程式启动时,就像所有的 C 程式一样, 会进入 main() 这个进入点,然後,在 main() 里头预设有一行 UIApplicationMain(argc, argv, nil, nil); 这时候,会先产生整个应用程式的第一个物件: UIApplication,而 这个 UIApplication 物件会开始载入 MainMenu.nib,并且设定一个 delegate 物件,这个物件就是范本帮你产生的哪个 XXXAppDelegate, 我们知道,delegate 就是当 A 要做哪件事情的时候,去问问 B 应该怎麽做 UIApplication 把程式启动完毕之後,就去问你的 XXXAppDelegate 要做什麽 所以就会进入这一行 - (void)applicationDidFinishLaunching:(UIApplication *)application UIAppication 物件把自己(self)传递给 XXXAppDelegate,告诉他程式执行 起来了,现在请 XXXAppDelegate 来决定应该做些什麽事情,我们就在这边 决定,要生出一个 window 出来,然後生出一个 navigatrionController,把 view 叠在 window 上…等等。 那接下来,问题其实应该是-我们在程式的其他地方,要怎样呼叫 XXXAppDelegate 这个 instance? 因为 UIApplication 是个 singleton 物件,所以,我们可以透过 UIApplication 找到他的 delegate [UIApplication sharedApplication].delegate; 比方说,你想要使用那边所定义的 window XXXAppDelegate *appDelegate = (XXXAppDelegate *)[UIApplication sharedApplication].delegate; UIWindow *window = appDelegate.window; 就这样。 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.42.189.204
1F:推 Jerrynet:用self.delegate可以吗@@? 07/17 01:50
2F:→ zonble:那要看这里的 self 是指向什麽东西啊 07/17 01:56







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP