Tag: autolayout

Xcode 5自动布局 – embedded表

我有一个embedded了几个UITableView的UIScrollView 。 我希望允许每个表格根据需要展开其高度,以显示其所有单元格。 滚动视图的框架占据了整个屏幕,所以它的contentSize.height需要扩展到适合最大的表格(我认为这是默认的行为,但我提到它,以防万一我不正确)。 这一切都可以在我的故事板上完成吗? 或者,如果我需要添加代码来做到这一点,我发现这个教程 ,但它是为iOS 6 – 有这个约束的东西的任何代码更改为iOS 7?

iOS 8:UITableViewCell.contentView不调整其中的子视图

我把自定义视图放在UITableViewCell.contentView ,将自定义视图的自动autoresize mask设置为W+H 但运行时, CustomView比ContentView获得更高的高度, ContentView高度是60pt (与UITableViewDelegate设置相同),但CustomView内部的76pt高度为76pt 。 通过Xcode6's view debugging ,我发现我的自定义视图有一些奇怪的约束,它们是: self.height = superview.height + 16 self.midY = superview.midY + 8 这些制约因素来自哪里以及如何修改它们? 我从来没有设置任何值8或16。 更新: 我做了一个testing项目,这是一个简单的故事板中的一个CustomView从一个nib文件加载一个CustomView ,这个testing项目复制了问题,运行时,作为TableViewCell.contentView子视图的CustomView变得比TableViewCell.contentView 。 testing项目位于: https : //drive.google.com/file/d/0B5y_NrRbhGlSb1dlbVZNb19vNjQ/view?usp =分享

多行UILabel与UIScrollview使用自动布局

我在scrollview阅读了contentview许多post,但问题稍有不同。请检查图片 我有以下的层次结构 这里的label是multiline label ,填满了太多的内容大小。 所以,问题是 1.根据label的线条, label高度变化 2.根据label高度, contentview高度变化。 所以,它滚动。 我希望这个事情可以通过autolayout来完成。 有一件事我想提到的是,我使用ios 8.1和xcode 6.1

UIScrollView自动布局与“页脚”固定到屏幕底部

我一直用头撞墙。 我需要有一个UIScrollView与任意数量的标签下对方,然后有一个标头固定在顶部和一个页脚固定在屏幕的底部。 所有这一切都需要使用自动布局。 这可能吗? 任何帮助,将不胜感激,谢谢, Alex Crompton

只在iPhone中查看不显示在iPad中

我有一个简单的应用程序,使用故事板创buildUI。 我有一个图标和loginbutton的login屏幕。 当我在iPhone上运行,但在iPad上时,它正在显示。 无论是在模拟器和设备上。 要检查是否是由于我的约束,我只是放下一个标签,没有任何限制,并查看蓝色背景。 即使这些都没有出现。 生成设置具有部署信息 – >设备设置为通用。 任何指向什么是错误的将不胜感激。 编辑 我尝试了以下。 在我的应用程序中,成功login后,UI将进入一个制表视图控制器。 如果我禁用显示login屏幕,应用程序进入标签视图控制器,并在iPad上正确显示它。 我不知道为什么login屏幕没有显示在iPad上。 编辑添加伊斯兰教所要求的细节 码 AppDelegate,检查用户是否login。如果不是,则显示login屏幕,否则显示TabViewOCntrolelr。 TabViewCOntroller部分显示在iPad和iPhone上 if([GIDSignIn sharedInstance].currentUser.authentication == nil) { UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; LoginViewController *viewController = (LoginViewController *)[storyboard instantiateViewControllerWithIdentifier:@"loginScreen"]; [self.window makeKeyAndVisible]; [self.window.rootViewController presentViewController:viewController animated:NO completion:nil]; } else { if(![self.gotUserprefs isEqualToNumber:@(YES)]) { UIUserNotificationType types = UIUserNotificationTypeBadge | UIUserNotificationTypeSound | […]

UITableView缺less新的可见行NSInternalInconsistencyException的单元格

我一直在与我的应用程序得到这个问题,不知道出了什么问题。 致命exception:NSInternalInconsistencyException缺less新的可见行78的单元格 这是堆栈跟踪: Fatal Exception: NSInternalInconsistencyException 0 CoreFoundation 0x191bbefd8 __exceptionPreprocess 1 libobjc.A.dylib 0x190620538 objc_exception_throw 2 CoreFoundation 0x191bbeeac +[NSException raise:format:] 3 Foundation 0x192656710 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] 4 UIKit 0x198022b3c __46-[UITableView _updateWithItems:updateSupport:]_block_invoke.1049 5 UIKit 0x197d234b8 +[UIView(UIViewAnimationWithBlocks) _setupAnimationWithDuration:delay:view:options:factory:animations:start:animationStateGenerator:completion:] 6 UIKit 0x197d39bac +[UIView(UIViewAnimationWithBlocks) animateWithDuration:delay:options:animations:completion:] 7 UIKit 0x197ee8770 -[UITableView _updateWithItems:updateSupport:] 8 UIKit 0x197eccfbc -[UITableView _endCellAnimationsWithContext:] 9 MyApp 0x1000ed518 -[UICommentsTableViewController insertNewComment:atLocation:] (UICommentsTableViewController.m:1228) […]

如何将宽度等同于NSLayoutConstraint的某些UIViews?

我如何可以钉住两个以上宽度的UIViews同样使用NSLayoutConstraints? 现在,我使用下面的代码,我不能钉住两个以上的UIViews: for (int i = 0; i < column.count; i++) { NSString *horizontalFormat = @"H:|[view1][view2(==view1)]|"; NSDictionary *views; if (i < column.count – 1) { views = @{ @"view1": column[i], @"view2": column[i + 1] }; }else{ views = @{ @"view1": column[i – 1], @"view2": column[i] }; } NSArray * horizontalConstraints = [NSLayoutConstraint constraintsWithVisualFormat:horizontalFormat options:NSLayoutFormatAlignAllTop | […]

iOS 8的自我大小单元不适用于UITableViewCellStyleSubtitle和numberOfLines = 0?

我不能让iOS 8的自我大小的单元格与默认的单元格样式UITableViewCellStyleSubtitle和numberOfLines = 0一起工作。似乎只有具有多个标签的默认单元格样式有这个问题。 基本的风格工作正常。 以下是演示此问题的示例项目: https : //github.com/stevemoser/SelfSizingDemo-DefaultCellStyle 使用自定义表格视图单元格的原始代码: http : //www.appcoda.com/self-sizing-cells/

在UITableViewCell中加载UIView的Nib文件不能拉伸

我有一个可以通过nib / xib文件重用的UIView。 我想加载这个,并填写一个UITableViewCell这是一个自我调整UITableView中使用。 所有与自动布局。 大多数工程很好,但似乎加载UIView使用附加的约束,缩小UITableViewCell的contentView。 这对身高是有好处的,但是我不想要这个宽度。 忽略下面的灰色单元格,这只是一个选定的单元格。 public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cellId = "RowView0002" var cell = tableView.dequeueReusableCell(withIdentifier: cellId) if cell == nil { cell = UITableViewCell(style: UITableViewCellStyle.default, reuseIdentifier: cellId) let subView = RowView(frame: cell!.frame) cell!.contentView.attachViewWithConstraints(subView) let _ = subView.viewLoadedFromNibAttached(name: cellId) } return cell! } override […]

为什么UITableViewCell具有自动布局约束冲突

我有一个UITableViewSubclass(样式:UITableViewCellStyleValue1)具有自定义标签,实质上是正常的textLabel标签的替代品。 它应该与正常的textLabel左alignment,但有一个宽度可以在正常的detailTextLabel的左侧结束8个点。 我得到了期望的效果,但是当使用这些单元格时,会出现一个exception,无法同时满足约束条件。 我不明白的是为什么抱怨,没有明显的冲突。 在设置约束之后调用[self layoutIfNeeded]将使exception无效。 或者,降低configuration尾随属性的约束(例如, UILayoutPriorityDefaultHigh而不是默认的UILayoutPriorityRequired )的优先级也使该exceptionUILayoutPriorityRequired ,显然是因为我通知自动布局引擎可以打破/忽略该约束。 我假设标准的UITableView实现可能会奇怪地将textLabel和textLabel以一种使得它最初不可能描述所描述的视图的方式进行textLabel 。 例如,如果textLabel实际上放置在单元格的右侧,而detailTextLabel放置在左侧,那么我描述的布局将是不可能的。 自动布局何时生效,在这种情况下。 它是否跳起了枪,并试图在事情发生之前进行布局呢? 没有使用Storyboard或XIB。 纯粹的基于代码。 #import "EBTStoreTableViewCell.h" @interface EBTStoreTableViewCell () @property (nonatomic, readonly, weak) UILabel *storeNameLabel; @end @implementation EBTStoreTableViewCell – (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier { self = [super initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:reuseIdentifier]; if (self) { self.textLabel.text = @" "; self.detailTextLabel.text = @" "; UILabel *storeNameLabel = […]