如何使用 RxCocoa 将图像设置为 UIButton

Posted

技术标签:

【中文标题】如何使用 RxCocoa 将图像设置为 UIButton【英文标题】:How to set image to UIButton by using RxCocoa 【发布时间】:2017-06-29 15:45:23 【问题描述】:

我对 RxSwift 和 RxCocoa 非常陌生。我想使用 RxCocoa 将图像设置为 UIButton。

 settingButton.rx.image(for: .normal).onNext(UIImage.init(named: "closeButton"))

任何人都知道如何将图像设置为 UIButton?我做得对吗?

【问题讨论】:

你想观察什么? 我做的对吗?我只想将图像设置为 UIButton 可以被动地做到这一点,但命令式地做到这一点更容易,对吧?我强烈建议你强制执行。 【参考方案1】:

我不建议您被动地设置按钮的图像。如果您没有任何特殊原因这样做,请按正常(必要)方式进行:

settingButton.setImage(UIImage.init(named: "closeButton"), for: .normal)

这是你如何被动地做到这一点,不需要asObserver 和其他东西:

button.rx.image().onNext(UIImage.init(named: "closeButton"))

【讨论】:

以上是关于如何使用 RxCocoa 将图像设置为 UIButton的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法将preferredStatusBarStyle 与RxCocoa 绑定?

将 SwiftUI 按钮绑定到 AnySubscriber,例如 RxCocoa 的按钮点击

如何解决 Xcode 构建错误“没有这样的模块 RxCocoa”?

调用中的 RxCocoa 额外参数

RxSwift、RxCocoa 和 UITableview

使用 RxCocoa 时 XCode 在部署到模拟器时崩溃