gpt4 book ai didi

ios - 在用户操作后替换屏幕详细部分的 View

转载 作者:行者123 更新时间:2023-11-30 14:04:24 25 4
gpt4 key购买 nike

我是 Swift 和应用程序开发的新手。我有一个设计问题。我正在尝试创建一个包含 slider 的 View ,但是一旦执行“内部修饰”操作,该 View 就会被进度条+按钮取代。如果按下按钮,我们将返回仅显示 slider 。该 View 不会占据整个屏幕,只会占据其中的一部分。

最好的方法是什么?我已经研究了几种选择:

<强>1。使用带有由 slider 触发的 Segue 的导航 Controller ,该 slider 进入带有进度条和按钮的新场景。

<强>2。创建具有两个属性的自定义 View : slider 和自定义 View (进度条和按钮)。可以使用界面构建器来布局 slider ,并且可以在需要时从 nib 文件加载自定义 View 。

<强>3。创建具有两个属性的自定义 View : slider 和自定义 View (进度条和按钮)。每当 slider 上的操作被触发时,就会以编程方式创建新的进度条和按钮。

我已经在某种程度上尝试过选项 1 和 2,但没有成功。由于我是一名初学者,我正在尝试尽可能多地使用IB。列表中的最佳选项是什么(如果有)?

最佳答案

您可以直接在 Storyboard 上执行此操作,而无需创建自定义 View 类,但无论如何您都需要几行代码。只需将 slider 拖到 View 中,然后将按钮和进度 View 直接拖到其顶部即可。现在选择该按钮,然后在属性检查器中,勾选“隐藏”旁边的框。对进度条执行相同的操作。然后只需打开助理编辑器并将引用连接到所有这 3 个。您还需要为按钮创建一个操作(我将其称为 change),并确保将 type 字段保留为 AnyObject.在 ViewDidLoad 中添加以下行:

slider.addTarget(self, action: Selector("change:"), forControlEvents: .TouchUpInside)

这一行只是让 change 在用户使用 slider 时被调用。显然将 slider 更改为您为 UISlider 命名的任何名称。您可以像这样实现 change 函数:

@IBAction func change(sender: AnyObject) {
slider.hidden = !slider.hidden
button.hidden = !button.hidden
progressBar.hidden = !progressBar.hidden
}

这是一个简单的实现,只是在每个项目的 true 和 false 之间切换,但您可能希望根据该项目的用途以不同的方式进行操作。

现在,如果您想将此功能放在应用程序中的多个位置,那么使用与上面相同的概念创建自定义 View 可能是最简单的方法,在这种情况下,请查看 this tutorial关于如何创建 IBDesignable UIView。

关于ios - 在用户操作后替换屏幕详细部分的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32596932/

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