来自不同 XIB 的操作?
Posted
技术标签:
【中文标题】来自不同 XIB 的操作?【英文标题】:Actions from different XIB? 【发布时间】:2011-02-27 03:21:42 【问题描述】:我有一个 XIB (RootViewController),它有我想从不同的 XIB (DetailViewController) 执行的操作,但我似乎做不到。
我已导入 .h 文件并使用此代码:
myTimer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:RootViewController selector: @selector(updateAlbumsAfterLogin) userInfo: nil repeats: NO];
我得到这个错误:
Expected expression before 'RootViewController'
可能有一个简单的解决方法,我会觉得自己很愚蠢。提前致谢!
编辑:
看看我做了什么:
RootViewController *controller = [[RootViewController alloc] init];
[NSThread detachNewThreadSelector:@selector(updateAlbums) toTarget:controller withObject:nil];
我在它上面做了一个 NSLog,它就会显示出来。但它并没有像我之前每 10 秒有一个计时器那样做其余的动作。有什么想法吗?
** 编辑:**
可能不清楚我想做什么。如果用户没有文件信息,我有一个向上滑动的视图。登录成功后,我希望它关闭然后刷新并检查不同 XIB 中的专辑。我尝试了各种各样的东西,但似乎没有一个有效!提前致谢。
【问题讨论】:
【参考方案1】:看起来你的目标是一个类而不是一个类的实例。您需要定位该类的一个实例。
【讨论】:
看看我做了什么:RootViewController *controller = [[RootViewController alloc] init]; [NSThread detachNewThreadSelector:@selector(updateAlbums) toTarget:controller withObject:nil];
我在上面做了一个 NSLog 并显示出来。但它并没有像我之前每 10 秒有一个计时器那样做其余的动作。有什么想法吗?
您之前正在制作控制器?这通常不是您从 XIB 初始化某些东西的方式。以后会不会添加到当前视图的子视图中?我怀疑您正在向错误的控制器实例发送消息。您是否还在控制台上看到任何类型的错误?
我在第二堂课中尝试过这样做:IBOutlet SecondViewController *controller;
但接口构建器不允许我将其连接到不同的 XIB。以上是关于来自不同 XIB 的操作?的主要内容,如果未能解决你的问题,请参考以下文章
使用界面生成器和 XIB,带有不同颜色文本的 UIlabel