草庐IT

StoryBoard

全部标签

ios - 依赖 Storyboard 和不良做法

在xcode、iOS和Objective-C方面,我充其量只是个初学者。我一直在做一个让我经常查找信息的项目。我已经学到了很多东西,但最近我意识到我形成了一些不好的做法。我使用Storyboard来布置应用程序的抽象View。我注意到的第一件事是处理iPad的弹出窗口View。我不知道如何通过按下按钮关闭它们,所以我创建了一个从弹出按钮返回主视图的新模式转场。我意识到这是在创建一个新View并将其置于现有View之上。这将开始链接,直到程序最终崩溃。昨晚我了解了委托(delegate)的重要性以及它们如何帮助我优雅地关闭弹出窗口View。根据我阅读的模态视图文档,看来我也需要取消这些类

ios - 查看已加载 : Checking if from a segue?

好的,基本上我有一个主视图Controller-我的应用程序的主菜单。我有一个按钮可以将用户带到表格View,他们可以在其中选择需要应用于主视图的内容。问题是,我不知道有什么方法可以判断主视图Controller是从segue还是从应用程序开始创建的。有没有办法检查这个?我应该只为viewDidLoad方法设置一个bool值或字符串来检查,然后在prepareForSegue中修改它吗? 最佳答案 所以现在我更好地了解了您的需求,我可以给您一个更彻底的答案。您真正需要的是与委托(delegate)和协议(protocol)相关的模式

ios - 访问另一个 View 的元素(iOS - 标签栏 Controller )

我在选项卡栏Controller中有两个选项卡用于用户注册事件。一旦用户单击“第二个选项卡”中的注册按钮,我需要从“第一个选项卡”获取一些UITextFields的值。那么,是否可以直接访问另一个View中的文本字段?或者我还能做些什么来解决?使用委托(delegate)/通知似乎是另一种方式,但浏览了与委托(delegate)相关的所有文章/问题,但无法弄清楚如何在我的代码中实现它。如果是这样,请分享一篇关于如何实现委托(delegate)的好文章。提前致谢。 最佳答案 您可以通过标签栏内的viewController的属性sel

ios - 如何根据设备加载不同的 Storyboard?

我正在尝试:检测设备(iPhone3.5"、iPhone4"、iPad等)根据运行应用程序的设备和大小加载不同的Storyboard。我已经看了一些教程,但我还是不明白,有人可以输入/显示需要在应用委托(delegate)中加入哪些代码才能实现这些目标。谢谢! 最佳答案 在您的应用委托(delegate)中尝试这样的事情:-(void)applicationDidFinishLaunching:(UIApplication*)application{UIStoryboard*storyboard=nil;if([[UIDevicec

ios - 具有自动布局的多行 UILabel 不起作用

我正在尝试设置约束以在静态表格View单元格中获取多行标签,但显然这对我不起作用,标签仍然在一行中。我已将numberOfLines属性设置为0,并将高度限制设置为大于或等于。我在tableView:heightForRowAtIndexPath中正确设置了单元格的高度。请查看我的屏幕截图以查看IB中的设置。 最佳答案 在上面的评论中,您提到您目前没有设置preferredMaxLayoutWidth。此属性告诉您的标签,它应该在该属性值的宽度上布置其文本。在UILabel.h中:Ifnonzero,thisisusedwhende

ios - NIB 文件中的静态表格单元格

是否可以创建一个带有自定义静态单元格的表格View的nib文件?我想创建一个包含所有静态内容的类似表单的TableView,但我目前没有使用Storyboard。我能够在我的应用程序的默认Storyboard中找到内容类型菜单,但我使用的是Nibs,当我创建UIViewControllernib或UITableViewControllernib时,在这两种情况下,属性检查器中都没有内容类型菜单标签。有什么想法吗? 最佳答案 目前看来,我正在尝试做的事情不受支持。我在Apple上提交了Radar错误,但这是对我有用的解决方法。只需使用

ios - 如何在 Xcode 中旋转 UISwitch?

我的应用程序中有一个UISwitch。默认情况下,它是水平的。我可以旋转开关使其垂直吗?我无意将此提交到AppStore,因此在我的情况下,Apple的HIG无关紧要。 最佳答案 当然可以,尝试更改开关层属性的变换属性。应该看起来像这样。#defineDEGREES_TO_RADIANS(__ANGLE)((__ANGLE)/180.0*M_PI)UISwitch*aSwitch=[[UISwitchalloc]init];aSwitch.layer.transform=CATransform3DMakeRotation(DEGRE

ios - 是否可以将 Storyboard项目从紧凑型 - 常规型移动到任意 - 任意型?

在Xcode6Beta5中,是否可以将Storyboard项目从紧凑-常规移动到任何-任何?我只看到它们是浅灰色的,我无法使用它们。 最佳答案 在beta5中,唯一的方法是(如zisoft所说)以压缩/常规方式复制/删除项目并将其粘贴到任何/任何。 关于ios-是否可以将Storyboard项目从紧凑型-常规型移动到任意-任意型?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2

ios - 如何在 AppDelegate 中获取 Storyboard UITabBarController 的指针

我正在使用Storyboard来创建我的应用程序。我的应用程序的根是一个UITabBarController。如何从我的ApplicationDelegate中访问我的tabBarController?我设法从我的一个UIViewController中成功地实现了操作。但我想将代码移至我的应用程序委托(delegate)。我怎样才能做到这一点?我以为我可以从Storyboard中拖放到我的应用程序委托(delegate)中,然后得到类似的东西@property(nonatomic,strong)IBOutletUITabBarController*tabBarController;但这

ios - 我应该在 Xcode 6 中使用自动布局还是应该为所有 iOS 设备使用单独的 Storyboard

我在使用自动布局时遇到了真正的困难,因为当我有时更改View时,已经分配的约束变得一团糟。因此,我真的应该给自己更多的时间来学习自动布局,还是应该使用多个Storyboard,因为这会花费一些时间,但最终会让我们在未来更轻松地轻松更改设计。 最佳答案 从我的学习中,我也有同感,因为第一次学习和理解AutoLayout很困难。这是使用的很多优点AutoLayout的优势future的iOS版本将支持自动布局当新版本的操作系统发布时,它将为您节省大量时间使用多个Storyboard您需要维护每个屏幕,如果您想更改View中的任何内容,这