[visionOS][Apple Vision Pro][SwiftUI] 定义一个UIImage变量,可动态改变,并显示在Image控件

Swift 复制代码
struct ContentView: View {
    @State private var myImage: UIImage?
    
    var body: some View {
        VStack {
            if let image = myImage {
                Image(uiImage: image)
                    .resizable()
                    .aspectRatio(contentMode: .fit)
            } else {
                Text("Image not initialized")
            }
            
            Button("Change Image") {
                // 修改myImage的值
                myImage = UIImage(named: "newImage")
            }
        }
        .onChange(of: myImage) { newImage in
            // 当myImage发生变化时执行的操作
            print("myImage has changed to \(newImage)")
        }
    }
}

实际上,不需要加.onChange也可以的,

因为@State标记一个属性时,SwitfUI会自动监听这个属性的变更,当这个属性发生改变,SwiftUI 会自动重新计算&绘制视图。

相关推荐
霍营_托尼10 小时前
纯前端播 40GB 本地视频?我把浏览器改造成了「磁盘流式」播放器
前端·javascript·音视频开发
溪语流沙10 小时前
【Web全栈进阶】FastAPI工程化:APIRouter拆分 + 配置 + 依赖注入
java·前端·fastapi
全栈练习生10 小时前
大模型推理全链路
python·ai
Shirley~~10 小时前
Three.js的基础概念
前端·3d
deli00710 小时前
黏菌没有大脑,3000 个 Physarum 粒子跑 12973 步自己铺出了迷宫最短路
前端
凌云若寒10 小时前
BarTender提示#807错误:无法在拥有其他许可证的Licensing Service上激活节点锁定的 Professional 版许可证 的解决办法
运维·服务器·前端·学习·软件需求
嘟嘟同学和妮妮同学10 小时前
用原生 JS 做了一个中国历史帝皇梳理的可视化站(7 朝 77 帝 + Leaflet 地图)
前端
黄权光10 小时前
【微信小程序】uni-app + Vue3 + Vite 的小程序项目实现「进入指定范围才能打卡」的考勤功能
前端
泡海椒10 小时前
JQuick-Excel VALIDATION 实战:用作用范围约束 Excel 导入校验
开发语言·python·excel
西柚小萌新11 小时前
【LLM&&AI应用开发 八股文】--4.2.Agent智能体(中)
前端·javascript·react.js