有没有办法使用故事板结合静态tableview单元格(静态内容)与dynamictableview单元格(原型内容)?
我有一个UIView在我的UIViewController故事板,我想添加一个约束的空间,从顶部边缘的距离。 现在,当我按照惯例通过拖动到ViewController的主视图,我只能得到选项将其设置为顶部布局指南。 这对我来说是一个问题,因为在应用程序中的某一点我将把主视图向上移动20-50px左右,然后会发生什么是我不会移动…因为它不与超视图alignment。 我怎样才能手动在故事板做到这一点,或者我必须以编程方式添加它? 我使用Xcode 6。
我已经花了两天的时间尝试了混合和纯粹的Autolayout方法的各种解决scheme,以实现自动布局之前的一个微不足道的scrollview设置,现在是正式的 – 我一定是太愚蠢了。 我主要是在Storyboard中设置它(呃,就是这样)。 所以这是我的求助。 Viewtree: UIView -UIView -UIView ..-UIScrollview …-UIButton …-UIButton …-UIButton button应该水平滚动(从左到右,反之亦然)。 有人可以让我知道如何设置约束,以实现这个使用纯粹的Autolayout? – 我尝试了混合的方法,像这样: UIView – UIView – UIView ..-UIScrollview …-UIView (contentview) ….-UIButton ….-UIButton ….-UIButton …并按照Apple的技术说明为contentview和translatesAutoresizingMaskIntoConstraints设置设置固定的宽度和高度约束。 button和滚动视图使用约束设置。 这得到滚动视图滚动(耶),但唉,它滚动太多了! 据我所知,滚动宽度是从我设置内容视图??? ??? ??? 我也尝试了纯粹的自动布局方法,无论是contentview还是没有。 所有的意见都translatesAutoresizingMaskIntoConstraints=NO self.view translatesAutoresizingMaskIntoConstraints=NO ,除了self.view 。 button具有固定的宽度/高度约束,并固定在滚动视图的所有四个边上。 什么都不滚动。 所以我很困惑为什么我不能正确地工作。 任何帮助非常感谢,如果您需要任何其他信息,请问! 更新解决scheme的屏幕截图 – buttonZ约束: 编辑@杰米福雷斯特因此,解决scheme原来是最后一个button错误的尾随约束。 我所设定的价值是6441,而不是6441。 棘手的是,当在故事板中设置值时,Pin工具栏中有两个选项: 当前canvas值是负值(导致不滚动),下面的选项是正值(激活滚动)。 这意味着我不愚蠢,但至less我是半盲。 虽然,我的辩护,是不是有点令人不安,XCode不显示错误的“不正确的”设置? 再次编辑现在,这很有趣…将尾随值从-6441(不滚动)更改为6441启用滚动。 但是我的老朋友“内容太多”又回来了,导致内容的大小是原来的两倍! […]
Xcode 6界面生成器默认有新的checkbox“使用大小类”。 它使视图适应。 当我尝试在故事板中的两个视图之间进行切换时,我有新的选项: 而不是老的: 现在我们有“显示”和“现在模态”而不是“推”和“模态”。 旧的选项被标记为已弃用。 我select了“show”选项,因为在segue设置中,它被称为“show(例如push) 但它不会推动。 Segueanimation看起来像从底部(模态)滑动和导航栏消失。 问题是:如何让“显示”工作像推? 是否可以或应该使用“推(弃用)”? 我在哪里可以find关于新types的赛格的任何信息? 我唯一在iOS8开发库中find的是故事板帮助您devise您的用户界面,但没有关于“show”segue的信息。 UPDATE 我试图创build新的项目,“显示”实际上是像“推”的作品。 我认为我的项目中的问题可能是因为我用导航控制器这样的代码,但我不知道如何解决它。 if ( [segue isKindOfClass: [SWRevealViewControllerSegue class]] ) { SWRevealViewControllerSegue *swSegue = (SWRevealViewControllerSegue*) segue; swSegue.performBlock = ^(SWRevealViewControllerSegue* rvc_segue, UIViewController* svc, UIViewController* dvc) { UINavigationController* navController = (UINavigationController*)self.revealViewController.frontViewController; [navController setViewControllers: @[dvc] animated: NO ]; [self.revealViewController setFrontViewPosition: FrontViewPositionLeft animated: YES]; }; […]
是否有可能取消prepareForSegue:方法中的segue? 我想在segue之前执行一些检查,如果条件不成立(在这种情况下,如果某个UITextField为空),则显示错误消息而不是执行segue。
我有一个字体添加到我的iOS项目。 它在项目中并在项目构build时复制。 它似乎是一个有效的字体,并会显示如果我通过应用程序列出设备上的所有字体。 我已经正确设置了plist来包含字体。 我似乎无法得到显示在Xcode 4.2的故事板部分我的文本控件,button等使用它。 此外,它似乎不允许我键入字体名称,这迫使我使用字体对话框。 我试图在系统中安装这个字体,但似乎无法让它显示在这个列表中。 我只需要在代码中执行此操作,还是可以通过故事板界面执行此操作? 请注意,我可以在代码中使用这个工具,但是通过故事板可以更方便。
考虑以下情况:我有一个基于故事板的应用程序。 我将一个ViewController对象添加到故事板,将该ViewController的类文件添加到项目中,并在IB身份检查器中指定新类的名称。 现在我该如何从AppDelegate以编程方式引用此ViewController? 我已经做了一个与相关的类的variables,并将其转换为一个IBOutlet属性,但我没有看到任何能够在代码中引用新的ViewController的任何方式 – 任何尝试按Ctrl拖动连接不起作用。 即在AppDelegate中,我可以像这样到达基础ViewController (MyViewController*) self.window.rootViewController 但是故事板中包含的任何其他ViewController如何?
在复杂的屏幕(视图控制器),我用小块(我称之为小部件)分开整个事情。 这些小部件基本上由MyWidget.h和MyWidget.m文件以及MyWidget.xib文件组成,其中根元素是UIView ,而MyWidget类是UIView的文件所有者。 在这个小部件的init中,我做了一个loadNibNamed 。 在我的View Controller中,我做了一个[[MyWidget alloc] init] ,我把它添加到View的Controller主视图中作为子视图。 到目前为止,这是完美的。 我现在想知道,如何做与故事板相同的,因为我不能真正开始在一个UIView地方,我总是不得不从UIViewController开始,我不想。 如果没有可能的方式与故事板做到这一点,我可以简单地做到这一点,通过使用我的主屏幕和赛格故事板,并使用单独的.xib文件来定义自定义视图?
我刚刚创build了一个应用程序,并开始将@ IBOutlet连接到故事板。 我将它们中的一些连接到具有基本样式的UITableViewCell原型单元中的标签。 当我连接它,虽然我得到故事板中的这个错误: 从TableViewController到UILabel的detailText Outlet无效。 sockets不能连接到重复的内容。 有人可以帮我吗? 我已经成功地完成了这个任务,但是这一次却把这个错误当成了我的错。
我是IOS开发新手,最近刚刚开始使用Xcode 4.5。 我看到每个viewController,我可以设置一些身份variables,包括故事板ID。 这是什么,如何使用它? 我开始在stackoverflow上search,找不到任何解释。 我认为这不只是一个愚蠢的标签,我可以设置记住我的控制器吗? 它有什么作用?