通过代码将约束设置为带有快速iOS8的情节提要中的元素

stefOCDP

我有一个带tableView的ViewController。我已经在情节提要中对其进行了设置。有没有办法以编程方式设置tableView的约束?我试图在ViewController的tableView中设置一个IBOutlet并将约束添加到它。但这是行不通的。

这是我的ViewController

import UIKit

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {

@IBOutlet weak var tableView: UITableView!

override func viewDidLoad() {
    super.viewDidLoad()

    addTableViewConstraints()
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

func addTableViewConstraints() {

    tableView.setTranslatesAutoresizingMaskIntoConstraints(false)

    var topConstraint = NSLayoutConstraint(item: self.tableView, attribute: NSLayoutAttribute.Top, relatedBy: NSLayoutRelation.Equal, toItem: self.view, attribute: NSLayoutAttribute.Top, multiplier: 1.0, constant: 20)
    var leadingContraint = NSLayoutConstraint(item: self.tableView, attribute: NSLayoutAttribute.Leading, relatedBy: NSLayoutRelation.Equal, toItem: self.view, attribute: NSLayoutAttribute.Leading, multiplier: 1.0, constant: 0)
    var trailingConstraint = NSLayoutConstraint(item: self.tableView, attribute: NSLayoutAttribute.Trailing, relatedBy: NSLayoutRelation.Equal, toItem: self.view, attribute: NSLayoutAttribute.Trailing, multiplier: 1.0, constant: 0)
    var bottomConstraint = NSLayoutConstraint(item: self.tableView, attribute: NSLayoutAttribute.Bottom, relatedBy: NSLayoutRelation.Equal, toItem: self.view, attribute: NSLayoutAttribute.Bottom, multiplier: 1.0, constant: 0)

    self.view.addConstraints([topConstraint, leadingContraint, trailingConstraint, bottomConstraint])

}

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 5
}

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    var cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! UITableViewCell
    cell.textLabel?.text = "Cell"
    return cell
}
}

还是我也必须通过代码制作tableView?

谢谢你!

基斯亨特

您在评论之一中提到要在用户按下按钮时更改约束。通过对约束进行出口,可以用更少的代码来实现这一点。在文档大纲页面中找到约束,然后按CTRL +拖动到您的类以创建约束的出口。然后,您可以更轻松地更改代码中的常数。

@IBOutlet weak var topConstraint: NSLayoutConstraint!
@IBOutlet weak var bottomConstraint: NSLayoutConstraint!

func buttonPressed() {
    if (/* some condition */) {
        self.topConstraint.constant += 8
        self.bottomConstraint.constant += 8
    } else {
        // Return the constraints to normal, or whatever you want to do
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

设置代码,情节提要中引用的标签?

来自分类Dev

无法从iOS中的情节提要中调用带有.xib文件的ViewController

来自分类Dev

在情节提要中为UIButton设置边框

来自分类Dev

在代码中修改情节提要自动布局约束的最佳实践?

来自分类Dev

带有Nib文件的情节提要中的UIViewController

来自分类Dev

IOS8中带有UIKeyboardWillShowNotification的keyboardWillShow

来自分类Dev

IOS8 Xamarin替换中带有Datepicker的UIActionSheet

来自分类Dev

iOS 8:如果没有情节提要,自动旋转将无法正常工作

来自分类Dev

设置约束后,为什么UITableView自己将其报告为600x600或情节提要中的内容?

来自分类Dev

将情节提要约束转换为代码

来自分类Dev

无法通过情节提要中的自动布局设置UItableView的tableHeaderView高度的约束

来自分类Dev

如何快速移动在情节提要中设置了约束的UI对象?

来自分类Dev

Swift:通过代码更改元素在情节提要上的位置

来自分类Dev

iOS-在情节提要中管理代码合并的最佳实践

来自分类Dev

无法在情节提要iOS8的导航栏中添加右键栏按钮

来自分类Dev

通过代码将约束设置为带有快速iOS8的Storyboard中的元素

来自分类Dev

在情节提要中设置约束时,Xcode连续崩溃

来自分类Dev

在情节提要中设置“自动布局”约束时,菜单中的同级对象不可用

来自分类Dev

无法将原型单元的高度设置为情节提要中的约束

来自分类Dev

快速iOS为带有循环的多个子视图添加约束

来自分类Dev

带有Nib文件的情节提要中的UIViewController

来自分类Dev

iOS 8键盘将视图控制器重置为情节提要板位置

来自分类Dev

设置约束后,为什么UITableView自己将其报告为600x600或情节提要中的内容?

来自分类Dev

带有UITabBarController和情节提要ios的侧面菜单

来自分类Dev

将情节提要约束转换为代码

来自分类Dev

如何快速移动在情节提要中设置了约束的UI对象?

来自分类Dev

在情节提要中设置约束时,Xcode连续崩溃

来自分类Dev

如何将情节提要UIView设置为视图的子类?

来自分类Dev

在情节提要中设置动态tableview高度约束

Related 相关文章

  1. 1

    设置代码,情节提要中引用的标签?

  2. 2

    无法从iOS中的情节提要中调用带有.xib文件的ViewController

  3. 3

    在情节提要中为UIButton设置边框

  4. 4

    在代码中修改情节提要自动布局约束的最佳实践?

  5. 5

    带有Nib文件的情节提要中的UIViewController

  6. 6

    IOS8中带有UIKeyboardWillShowNotification的keyboardWillShow

  7. 7

    IOS8 Xamarin替换中带有Datepicker的UIActionSheet

  8. 8

    iOS 8:如果没有情节提要,自动旋转将无法正常工作

  9. 9

    设置约束后,为什么UITableView自己将其报告为600x600或情节提要中的内容?

  10. 10

    将情节提要约束转换为代码

  11. 11

    无法通过情节提要中的自动布局设置UItableView的tableHeaderView高度的约束

  12. 12

    如何快速移动在情节提要中设置了约束的UI对象?

  13. 13

    Swift:通过代码更改元素在情节提要上的位置

  14. 14

    iOS-在情节提要中管理代码合并的最佳实践

  15. 15

    无法在情节提要iOS8的导航栏中添加右键栏按钮

  16. 16

    通过代码将约束设置为带有快速iOS8的Storyboard中的元素

  17. 17

    在情节提要中设置约束时,Xcode连续崩溃

  18. 18

    在情节提要中设置“自动布局”约束时,菜单中的同级对象不可用

  19. 19

    无法将原型单元的高度设置为情节提要中的约束

  20. 20

    快速iOS为带有循环的多个子视图添加约束

  21. 21

    带有Nib文件的情节提要中的UIViewController

  22. 22

    iOS 8键盘将视图控制器重置为情节提要板位置

  23. 23

    设置约束后,为什么UITableView自己将其报告为600x600或情节提要中的内容?

  24. 24

    带有UITabBarController和情节提要ios的侧面菜单

  25. 25

    将情节提要约束转换为代码

  26. 26

    如何快速移动在情节提要中设置了约束的UI对象?

  27. 27

    在情节提要中设置约束时,Xcode连续崩溃

  28. 28

    如何将情节提要UIView设置为视图的子类?

  29. 29

    在情节提要中设置动态tableview高度约束

热门标签

归档