Tag: cocoa

“Interface Builder文件中的未知类<MyClass>”运行时出错

即使Interface Builder知道MyClass ,但在启动应用程序时出现错误。 这发生在MyClass是库的一部分时,如果我直接在应用程序目标中编译类,则不会发生这种情况。

加载的笔尖,但“视图”出口没有设置

我添加了一个新的笔尖文件到我的项目,并试图加载它。 但是,当我点击应该带我到我创build的视图的工具栏图标时,我得到一个NSInternalInconsistencyException与消息: 终止应用程序由于未捕获的exception'NSInternalInconsistencyException',原因:' – [UIViewController _loadViewFromNibNamed:bundle:]加载了“…”笔尖,但未设置视图sockets。 所以我打开了我的笔尖文件,我发现没有设置参考插口。 然而,我尝试点击并拖动“新的参考sockets”的文件的所有者,但它不会让我…我需要做什么才能让我的观点显示?

导航控制器内的标签栏控制器,或共享导航根视图

我试图实现一个结构像Tweetie应用程序中的UI,其行为如下:顶层视图控制器似乎是一个导航控制器,其根视图是“Accounts”表视图。 如果您点击任何帐户,则会进入第二级,底部有一个标签栏。 每个选项卡项目显示不同的列表,并让您进一步向下钻取(后续级别不显示选项卡栏)。 所以,这似乎是实现层次结构是: UINavigationController 帐户 : UITableViewController UITabBarController 推文 : UITableViewController 推特/用户等的详细视图 回复 : UITableViewController … 这似乎工作[^ 1],但似乎不支持根据SDK文档的-pushViewController:animated:强调增加): viewController :被推入堆栈的视图控制器。 它不能是标签栏控制器的一个实例。 我想避免私人的API等,但我不知道为什么这个用法是明确禁止,即使它似乎工作正常。 任何人都知道原因? 我想过把标签栏控制器作为主控制器,每个选项卡包含单独的导航控制器。 问题是每个导航控制器需要共享一个根视图控制器(即Tweetie中的“Accounts”表) – 这似乎不起作用:将表控制器推到第二个导航控制器似乎将其删除从第一个。 更不用说在select不同的账户时所有的记账都可能是一个痛苦。 我应该如何实现这个正确的方法? [^ 1]:标签栏控制器需要进行子类化,以使标签栏控制器在该级别的导航项目与选定标签的导航项目保持同步,并且单个标签的表格控制器需要将它们各自的详细视图self.tabBarController.navigationController推入self.tabBarController.navigationController self.navigationController而不是self.navigationController 。

如何确定一个UIWebView的内容大小?

我有一个UIWebView具有不同的(单页)内容。 我想找出内容的CGSize来适当调整我的父视图。 显然-sizeThatFits:不幸的是只返回webView的当前帧大小。

删除/重置核心数据中的所有条目?

你知道有什么办法删除存储在Core Data中的所有条目吗? 我的模式应该保持不变; 我只是想重置它为空白。 编辑 我正在寻找这样做以编程方式,使用户可以基本上打一个resetbutton。

layoutSubviews何时被调用?

我有一个自定义视图,在animation过程中不会获取layoutSubview消息。 我有一个观点,填补了屏幕。 如果我更改导航栏的高度,它将在界面生成器中正确resize的屏幕底部有一个自定义子视图。 layoutSubviews在创build视图时被调用,但不会再次。 我的子视图是正确的布局。 如果我closures了通话状态栏,那么即使主视图执行了其resize的animation,子视图的layoutSubviews也不会被调用。 layoutSubviews在什么情况下实际调用? 我有autoresizesSubviews设置为NO为我的自定义视图。 在界面生成器中,我有顶部和底部支柱和垂直箭头集。

在导航控制器中设置后退button的动作

我试图覆盖导航控制器中后退button的默认操作。 我在自定义button上提供了一个目标操作。 奇怪的是,当通过backbutton属性赋值时,它并不关注它们,它只是popup当前视图并返回到根: UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle: @"Servers" style:UIBarButtonItemStylePlain target:self action:@selector(home)]; self.navigationItem.backBarButtonItem = backButton; 只要我通过navigationItem上的leftBarButtonItem设置它,它会调用我的动作,但是这个button看起来像一个普通的圆形而不是箭头后面的一个: self.navigationItem.leftBarButtonItem = backButton; 如何在返回到根视图之前调用我的自定义操作? 有没有办法来覆盖默认的后退动作,还是有一种方法,总是在离开视图时调用(viewDidUnload不这样做)?

cocoa:框架和界限有什么区别?

UIView及其子类都具有属性frame和bounds 。 有什么不同?

UIView和UILabels在iPhone上的渐变

可能重复: 在iPhone应用程序中手动绘制渐变? 我的应用程序需要在UIView或UILabel显示文本,但是背景必须是渐变而不是真正的UIColor 。 使用graphics程序创build所需的外观并不好,因为文本可能因服务器返回的数据而异。 有没有人知道最快的方法来解决这个问题? 你的想法是不胜感激。

为什么我不应该在init / dealloc中使用Objective C 2.0访问器?

在@ mmalc对这个问题 的 回应中 ,他说:“一般来说,你不应该在dealloc(或init)中使用accessor方法。 为什么mmalc这样说? 我能想到的唯一真正的原因是性能,并避免@dynamic setter的未知副作用。 讨论?