gpt4 book ai didi

ios - 在信标范围内时显示图像而不是颜色

转载 作者:行者123 更新时间:2023-11-29 00:22:51 25 4
gpt4 key购买 nike

我正在尝试编写一个应用程序以在它进入信标范围时更改屏幕并且一直在遵循本教程:https://www.hackingwithswift.com/example-code/location/how-to-detect-ibeacons

教程使用代码:

func updateDistance(_ distance: CLProximity) {
UIView.animate(withDuration: 0.8) {
switch distance {
case .unknown:
self.view.backgroundColor = UIColor.gray

case .far:
self.view.backgroundColor = UIColor.blue

case .near:
self.view.backgroundColor = UIColor.orange

case .immediate:
self.view.backgroundColor = UIColor.red

告诉应用程序根据信标与设备的距离更改为不同的颜色。我希望我的应用程序做同样的事情,但我希望它显示图像而不是显示颜色。

我尝试过使用 UIImageView,但它没有提供选择图像的选项,类似于它让我在使用 UIColor 时选择颜色的方式/p>

有人可以向我解释如何让它显示图像而不是颜色吗?

我正在使用 Xcode 8.3.2

最佳答案

好的,您需要执行几个步骤:

进入界面生成器并创建一个 ImageView 。设置布局约束以将其放置在屏幕上您想要的位置,并设置约束以将其高度和宽度设置为您要显示的图像的高度和宽度。

现在打开一个辅助编辑器窗口并将其设置为“自动”,这应该会导致它显示 View Controller 的源代码。

按住 Control 键并从 ImageView 拖动到 View Controller 的顶部以创建 IBOutlet。我们称之为anImageView

在应用的资源目录中以您想要支持的目标分辨率创建图像。您可能需要 @2x 和 @3x 大小的图像用于视网膜设备和 6+。您不再需要非视网膜图像,因为 iOS 9 及更高版本不再支持非视网膜设备。

假设您的 Assets 目录中有名为“unknown.png”、“far.png”、“near.png”和“immediate.png”的条目,它们都是相同的尺寸(比如 100x100 点,@2x 和@3x 版本,仅作为示例。)

现在重写你的函数,如下所示:

func updateDistance(_ distance: CLProximity) {
switch distance {
case .unknown:
anImageView.image = UIImage(named: "unknown")

case .far:
anImageView.image = UIImage(named: "far")

case .near:
anImageView.image = UIImage(named: "unknown")

case .immediate:
anImageView.image = UIImage(named: "immediate")
}

应该可以了。

关于ios - 在信标范围内时显示图像而不是颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43881805/

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