Swift -视图层次结构
我试着把一种观点带到另一种观点之前。该视图是隐藏的,并将在轻按按钮时显示。这是我的层次结构:
?
?
我需要在前面显示的视图是info视图
我已经尝试过这样做:
infoView.superview?.bringSubview(toFront: infoView)
但是它不起作用,我试着用z索引
infoView.layer.zPosition = 100
但也不起作用。
有什么想法吗?
更新:这是正在工作的按钮的代码:
@IBOutlet var infoButtons: [UIButton]!
@IBAction func infoButtonPressed(_ sender: UIButton) {if sender.tag == 8 {
if constraint.count > 0 {
NSLayoutConstraint.deactivate(constraint)
constraint.removeAll()
}
let alignYConstraint = NSLayoutConstraint(item: infoView, attribute: .centerY, relatedBy: .equal, toItem: infoButtons[7], attribute: .centerY, multiplier: 1.0, constant: 0)
NSLayoutConstraint.activate([alignYConstraint])
constraint.append(alignYConstraint)
self.infoView.textView.scrollRangeToVisible(NSMakeRange(0, 0))
infoView.isHidden = false
infoView.superview?.bringSubview(toFront: infoView)
}
更新:
我有一个添加到infiView中的nib文件,下面是Xib的代码:
import UIKit
class InfoView: UIView {
@IBOutlet var contentView: UIView!
@IBOutlet weak var textView: UITextView!
var onClickCallback: (() -> Void)?
override init(frame: CGRect) {
super.init(frame: frame)
commonInit()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
commonInit()
}
private func commonInit() {
Bundle.main.loadNibNamed("InfoView", owner: self, options: nil)
addSubview(contentView)
contentView.frame = self.bounds
contentView.autoresizingMask = [.flexibleHeight, .flexibleWidth]
textView.backgroundColor = UIColor.clear
}
@IBAction func closeInfoViewPressed(_ sender: Any) {
onClickCallback?()
}
}
在另一个VC中,我添加了一个视图,并为它分配了类InfoView。infoView是隐藏的,并且在单击时变为可见。我试图在显示时将它放在标题的前面(这不是一个导航控制器,而是一个自定义视图)。见图:
?
?
?
?
?
?
转载请注明出处:http://www.mingweiauto.com/article/20230526/989007.html
随机推荐
-
Swift实现表格视图单元格多选
本文实例为大家分享了Swift实现表格视图单元格多选的具体代码,供大家参考,具体内容如下 效果 前言 这段时间比较忙,没太多的时间写博客,前段时间写了一些关于表格视图单选的文章,想着,一并把多选也做了,今天刚好有时间,去做这样一件事情。...
-
Swift:带有视图背景的图像自动约束
我从Swift开始,试图寻找答案,但找不到答案。我有一个UIViewController,在其中,我正在处理组件(标签、按钮、图像等)的布局。为了获得良好的外观,我使用了UIView,并将其颜色更改为灰色。在它里面,我有一个徽标的图像,我试...
-
Swift: UICollection视图布局问题
我正在尝试布局一个UICollectionView,就像我在照片中绘制的模型一样(还显示了每个项目的索引):??我目前尝试实现这一点的代码是:在ViewDidLoad中:collectionView.dataSource = self ...
-
从XIB添加的Swift滚动视图根本不能滚动
我正在尝试从Xib全屏ScrollView导入到我的ViewController中。根据这个guide,我做了很多工作示例,但是当从Xib导入它时,ScrollView在滚动时不响应(甚至不弹跳)我的Xib视图类:class TestScr...
-
Swift:视图周围为黑色
你好,我正在创建一个函数来裁剪照片,我希望裁剪照片的容器的外部是黑色的,不透明度为0.5,看看下面的图片可以更好地理解:??我用黑色绘制的就是我想要的不透明度为0.5的黑色,怎么做呢?用户可以移动和改变边框的大小,我用CGRect来改变这个...
-
Swift的web视图仅将head/headbody/body打印为innerhtml
我试着遵循this tutorial来使用webview,但是当我写下这段代码时: webView.evaluateJavaScript(document.getElementsByTagName(html)[0].innerHTML, ...
-
Swift表格视图单元格在各部分上不显示背景图像
在cellForRowAtIndexPath方法中,我向单元格添加了一个背景图像,如下所示:let image = UIImage(named: other_car) let imageView = UIImageView(image: i...
-
UICollectionReusableView的Swift子视图与宽度不匹配
我有一个带有标头( UICollectionReusableView )的UICollectionViewController。在这个UICollectionReusableView中,我有一个子视图(粉色)。??我已经为子视图设置了一些约...
-
两个类使用同一函数创建自定义视图-- Swift
我是Swift的新手,我不能理解这一点。我有两个类,我需要使用相同的函数来设置自定义UIStackVIew (显示评级星的评级控件)。每个类都有一个名为value的变量,需要在函数内部传递该变量。我不想在每个类中重复setUpStackVi...
-
Swift表格视图单元格滚动后更改渐变颜色
在多个设备上检查我的应用程序后,我才意识到我的表视图不能正常工作。我目前正在开发一个视图,它在顶部包含一个滚动视图,在底部包含一个TableView。当我创建视图时,我使用Iphone XS Max作为我的测试设备,一切工作正常。然而,当设...