gpt4 book ai didi

ios - 如何通过在自定义 View 中按下按钮从 super View 中删除自定义 View ?

转载 作者:行者123 更新时间:2023-11-28 11:22:45 30 4
gpt4 key购买 nike

每当在我的 iOS 应用程序中点击 View Controller 的 TableView 的单元格时,我想显示我自己的自定义 View 。当用户点击放置在自定义 View 中的按钮时,我还必须关闭自定义 View 。

但是,虽然我能够在用户点击单元格时显示自定义 View ,但我无法通过点击自定义 View 内的按钮来关闭自定义 View - 它因错误而崩溃:无法识别的选择器已发送实例...

所以我想知道将按钮放入自定义 View 并将 @IBAction 连接到它以关闭它的正确方法是什么。这是我所做的:

  1. 在自定义 View 的.xib 和它的.swift 文件之间添加@IBAction 连接并调用self.removeFromSuperview () 从方法内 - 这会使应用程序崩溃并显示上述错误消息。

  2. @IBAction 连接添加到我的 View Controller ,该连接被调用以显示自定义 View (即具有 UITableView 的 View ) - 这无法完成,因为当我尝试创建连接,但 Xcode 对控制拖动行为没有反应。

此外,如果我理解正确的话,我无法将自定义 View 的 xib 添加到 Storyboard 文件中,因为最初未创建自定义 View ;它是通过在运行时点击单元格来实例化的。

那么如何通过点击按钮关闭自定义 View 呢?我应该在哪里编写代码(即在自定义 View 的 .swift 文件或原始 VC 的 .swift 文件中)?

更新

当我从自定义 View 的 xib 上的按钮添加一个 @IBOutlet 连接到自定义 View 的 .swift 文件,并尝试 println() 来自 View Controller ,例如 (println(customView.dismissButton)),然后它也因以下错误而崩溃:此类与键的键值编码不兼容关闭按钮。。所以我最好只添加手势 Controller 并让窗口上的任何点击使用react以关闭自定义 View ......这非常令人作呕。

更新 2

@Caroline 在评论部分的 zip 文件正是我想要做的,但我不想在代码中创建和实例化自定义 View ,而是想在 xib 上创建 UI,创建一个 @IBAction xib 上的组件和我的代码之间的连接,最后将其从代码中解压缩以供使用。

最佳答案

今天,您几乎肯定会为此使用容器 View

然后隐藏它、设置它的动画、滑动它、向它发送消息等等都是微不足道的。

https://stackoverflow.com/a/23403979/294884

"Thanks. But do I have to use another view controller just in order to do it?"

当然可以。您绝对应该使用容器 View 。这是多年来唯一的出路。 只需在 Storyboard 中拖一个。

现在 iOS 中几乎一切都是容器 View 。每一件小事。这是当今的“典范”。

关于ios - 如何通过在自定义 View 中按下按钮从 super View 中删除自定义 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25946009/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com