gpt4 book ai didi

ios - 我可以更改我的 Swift 应用程序中所有按钮的属性吗?

转载 作者:可可西里 更新时间:2023-11-01 04:23:19 24 4
gpt4 key购买 nike

我有一个 Swift 应用程序,它在许多 View Controller 中导航,所有 View Controller 都具有相似的外观。每个 View Controller 中都有我没有为其创建 IBOutlet 属性的按钮(它们都只是通过 Interface Builder 触发 segues)。

有没有一种简单的方法可以更改应用中所有按钮的背景颜色或文本颜色,而无需为 IB 中的每个按钮更改它或为每个按钮创建 IBOutlet?

最佳答案

以下是可以简化事情的基本步骤,在您的情况下,必须对每个 viewController 重复此步骤。

  1. 为所有按钮创建一个 outlet:

    @IBOutlet var myButtons: [UIButton]!
  2. 将此 socket 与 View 上的每个按钮连接(拖动)。单击界面中的每个按钮并检查 connections inspector 中的“Referencing Outlet Collections”(圆圈中带有箭头的最后一个按钮)。请注意,它们都应该链接到 myButtons

  3. 在 for 循环中设置按钮的样式:

    for button in self.myButtons {
    button.backgroundColor = UIColor.clearColor()
    button.layer.borderWidth = 1
    button.layer.borderColor = UIColor.greenColor().CGColor
    }

为了扩大这项工作的应用范围,您可以通过几个选项进行调查。你可以使用常量,这样至少当你想改变样式时,你只需要修改一个文件:Constants in Objective-C , Global constants file in Swift .

或者,有几种方法可以使函数公开。我将尝试获取一些示例代码,但名为 buttonStyle 的类对于每个 viewController 都可能很重要,并在 for 循环中调用:[buttonStyle styleButton:button]styleButton 函数会设置样式(我还没有为此测试过任何东西)。

查看@zisoft 的回答:How to loop through Outlets of a UIViewController with Swift ,是更详细的日志!。

关于ios - 我可以更改我的 Swift 应用程序中所有按钮的属性吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28702043/

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