作者Blueshiva (龙野南云)
看板MacDev
标题Re: [问题] Xcode改变其他Class内变数方法请益
时间Thu Dec 29 21:32:34 2016
※ 引述《aureolus (Aureo)》之铭言:
: 原本使用的方法是前辈教的...在Xcode7.3.1都没有问题
: 但是最近发现更新到8.2.1後会出现错误,虽然还不影响工作
: 不过还是觉得是大问题来请问各位达人们...
: https://github.com/Hikariri/test
: 原本都是使用:
: [NSApp delegate]用这种方法直接去存取其他Class当中的值
: 但是在Xcode 8.2.1中这种方法会报错...(ARC Semantic Issue No know instance method ....)
: 想请问下有没有较好的修改方法或是其他能够存取其他Class的方法,谢谢!
除了 MeBMethod 没有 public 出来的问题之外,[NSApp delegate] 回传的是
id<NSApplicationDelegate>,所以当然不会有 MeBMethod 这个 method,你要自己
转型成 AppDelegate
基本上就是把你的 MeA.m 改成
- (IBAction)ChB:(id)sender {
[[(AppDelegate *)[NSApp delegate] MeBMethod]
StringChange:textFieldX.stringValue];
}
除此之外,你的命名方式一团糟,实在很难搞懂什麽是什麽...
然後直接透过app delegate把某个成员变数丢给另一个物件去处理实在是很糟的方式
不过这个问题可能要等你先把其他部分补起来再谈。
最後,我实在看不懂你到底想要做到怎样的效果...你要不要试着把想要做什麽事情讲
清楚,才比较好写范例给你?
--
Luna quieres ser madre
y no encuentras querer
que te haga mujer
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.136.229.61
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MacDev/M.1483018357.A.219.html
※ 编辑: Blueshiva (220.136.229.61), 12/29/2016 21:34:58
1F:推 darktt: 热心推 12/29 21:53