【问题标题】:Creating UI element won't let change position创建 UI 元素不会改变位置
【发布时间】:2014-06-19 14:34:28
【问题描述】:

我试过这个:

@IBAction func test(sender : AnyObject){
    let height:CGFloat = 44
    var tableFrame:CGRect = tableView.frame;
    var fieldFrame = CGRect()
    fieldFrame.origin = tableFrame.origin
    fieldFrame.size.height = height
    fieldFrame.size.width = tableFrame.size.width
    var textField = UITextField(frame: fieldFrame)
    textField.backgroundColor = UIColor(white: 0, alpha: 1)
    view.addSubview(textField)
    tableFrame.size.height = tableFrame.size.height - height
    tableFrame.origin.y = tableFrame.origin.y + height
    tableView.frame = tableFrame
}

运行时出现黑场,但桌子不会移动,也不会改变大小。删除线

view.addSubview(textField)

允许表格改变大小和移动,但显然没有字段出现。有什么问题?

【问题讨论】:

    标签: xcode swift


    【解决方案1】:

    您的文本字段实际上位于 tableview 之上。您的触摸操作可能会转到文本字段视图而不是表格视图

    【讨论】:

    • 对不起,什么触摸动作?我的意思是,桌子不会改变它应该的位置tableFrame.origin.y = tableFrame.origin.y + height
    • 对不起,当你说你不能移动表格时,我以为你在谈论表格视图的滚动。调整 tableview 大小后是否尝试添加 textField?
    • 我刚刚尝试运行您的代码,它正在改变 tableview 的大小。尝试为框架添加边框颜色,您应该能够看到它在哪里移动。我要验证的几件事是将tableview的高度更改为100,并且y原点从顶部移动了100,这样我就可以看到由于导航栏而被隐藏的边框
    猜你喜欢
    • 2020-06-25
    • 1970-01-01
    • 2017-02-18
    • 2018-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-22
    相关资源
    最近更新 更多