大佬教程收集整理的这篇文章主要介绍了在 SwiftUI 中,如何使用动态变化的滚动区域缩放 scrollView 内的内容?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 SwiftUI 开发 MacOS 应用程序。
假设我们有一个固定大小的窗口,它将显示一个可滚动的图像。 现在我想创建一个功能,可以让用户缩放图像,并且可以在窗口内滚动和查看缩放的图像。
问题是,一旦我放大图像,滚动区域似乎没有一起展开,并且滚动区域不够大,无法到达图像的每个角落。
struct ContentVIEw: VIEw {
var body: some VIEw {
ScrollVIEw([.horizontal,.vertical],showsInDicators: true ){
Image("test")
.scaleEffect(2)
}
.frame(wIDth: 500,height: 500)
}
}
我尝试使用 GeometryReader 设置图像的框架,但得到了相同的结果。
@H_579_2@macOS 11.1,Xcode 12.3谢谢!
.scaleEffect
似乎对视图执行了视觉变换,而实际上并不影响其框架,因此 ScrollView
不知道适应更大的尺寸。
.resizable()
和 .frame
似乎可以解决问题:
struct ContentView: View {
@State private var scale : CGFloat = 1.0
var body: some View {
VStack {
ScrollView([.horizontal,.vertical],showsInDicators: true ){
Image(systemname: "plus.circle")
.resizable()
.frame(width: 300 * scale,height: 300 * scalE)
}
.frame(width: 500,height: 500)
Slider(value: $scale,in: (0...5))
}
}
}
以上是大佬教程为你收集整理的在 SwiftUI 中,如何使用动态变化的滚动区域缩放 scrollView 内的内容?全部内容,希望文章能够帮你解决在 SwiftUI 中,如何使用动态变化的滚动区域缩放 scrollView 内的内容?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。