【发布时间】:2018-09-11 19:31:12
【问题描述】:
每当我使用 pickerview 将视图从 Auto Rent 切换到 Schedule Rent 时,它都能完美运行。当我从 Schedule Rent 切换到 Auto Rent 时,会出现这个黑条。我已经附加了我的内容视图的层次结构。 I thought it had to do with previous constraints added, so I remove a StackView whenever one view is chosen.例如,如果选择了 Auto Rent,那么我将删除 Schedule View 所在的 StackView:
//Holds Temp Stackviews
var stackViewHolder1: UIView?
var stackViewHolder2: UIView?
override func viewDidLoad() {
super.viewDidLoad()
stackViewHolder1 = stackViewMain.arrangedSubviews[0]
stackViewHolder2 = stackViewMain.arrangedSubviews[1]
}
if txtRentType.text == "Auto Rent" {
let tempView = stackViewHolder1
let tempView1 = stackViewHolder2
tempView!.isHidden = true
stackViewMain.removeArrangedSubview(tempView!)
if(tempView1!.isHidden == true){
tempView1!.isHidden = false
stackViewMain.addArrangedSubview(tempView1!)
}
else{
let tempView = stackViewHolder1
let tempView1 = stackViewHolder2
tempView1!.isHidden = true
stackViewMain.removeArrangedSubview(tempView1!)
if(tempView!.isHidden == true){
tempView!.isHidden = false
stackViewMain.addArrangedSubview(tempView!)
}
}
我尝试删除一个视图并切换只有一个视图被隐藏,这消除了黑条问题。 stackViews 和 Content View 没有限制。
突出显示的屏幕是滚动视图。紧随其后的是 contentView。 UIWindow 后面变黑了。
我顶部的标题栏不知何故出现在中间。
【问题讨论】:
-
尝试将隐藏堆栈视图的逻辑放置在
UIView.animate动画块中 -
我之前试过了,还是不行。
-
使用视图调试器,黑色区域是滚动视图内容的一部分,还是滚动视图底部向上移动并暴露该区域?
-
我现在要做视图调试器,但我几乎 100% 是滚动视图在移动。我在顶部有一个导航栏,它消失了,因为整个视图都向上移动了。
-
@GrahamPerks 我编辑了我的帖子以显示视图调试器