我试着把一种观点带到另一种观点之前。该视图是隐藏的,并将在轻按按钮时显示。这是我的层次结构:

?

?

我需要在前面显示的视图是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

随机推荐

  1. Swift实现表格视图单元格多选

    本文实例为大家分享了Swift实现表格视图单元格多选的具体代码,供大家参考,具体内容如下 效果 前言 这段时间比较忙,没太多的时间写博客,前段时间写了一些关于表格视图单选的文章,想着,一并把多选也做了,今天刚好有时间,去做这样一件事情。...

  2. Swift:带有视图背景的图像自动约束

    我从Swift开始,试图寻找答案,但找不到答案。我有一个UIViewController,在其中,我正在处理组件(标签、按钮、图像等)的布局。为了获得良好的外观,我使用了UIView,并将其颜色更改为灰色。在它里面,我有一个徽标的图像,我试...

  3. Swift: UICollection视图布局问题

    我正在尝试布局一个UICollectionView,就像我在照片中绘制的模型一样(还显示了每个项目的索引):??我目前尝试实现这一点的代码是:在ViewDidLoad中:collectionView.dataSource = self ...

  4. 从XIB添加的Swift滚动视图根本不能滚动

    我正在尝试从Xib全屏ScrollView导入到我的ViewController中。根据这个guide,我做了很多工作示例,但是当从Xib导入它时,ScrollView在滚动时不响应(甚至不弹跳)我的Xib视图类:class TestScr...

  5. Swift:视图周围为黑色

    你好,我正在创建一个函数来裁剪照片,我希望裁剪照片的容器的外部是黑色的,不透明度为0.5,看看下面的图片可以更好地理解:??我用黑色绘制的就是我想要的不透明度为0.5的黑色,怎么做呢?用户可以移动和改变边框的大小,我用CGRect来改变这个...

  6. Swift的web视图仅将head/headbody/body打印为innerhtml

    我试着遵循this tutorial来使用webview,但是当我写下这段代码时: webView.evaluateJavaScript(document.getElementsByTagName(html)[0].innerHTML, ...

  7. Swift表格视图单元格在各部分上不显示背景图像

    在cellForRowAtIndexPath方法中,我向单元格添加了一个背景图像,如下所示:let image = UIImage(named: other_car) let imageView = UIImageView(image: i...

  8. UICollectionReusableView的Swift子视图与宽度不匹配

    我有一个带有标头( UICollectionReusableView )的UICollectionViewController。在这个UICollectionReusableView中,我有一个子视图(粉色)。??我已经为子视图设置了一些约...

  9. 两个类使用同一函数创建自定义视图-- Swift

    我是Swift的新手,我不能理解这一点。我有两个类,我需要使用相同的函数来设置自定义UIStackVIew (显示评级星的评级控件)。每个类都有一个名为value的变量,需要在函数内部传递该变量。我不想在每个类中重复setUpStackVi...

  10. Swift表格视图单元格滚动后更改渐变颜色

    在多个设备上检查我的应用程序后,我才意识到我的表视图不能正常工作。我目前正在开发一个视图,它在顶部包含一个滚动视图,在底部包含一个TableView。当我创建视图时,我使用Iphone XS Max作为我的测试设备,一切工作正常。然而,当设...