好。我正在将this project复制为纯SwiftUI视图。
我的工作适合我。我知道该系统仍然存在问题。第一次更新很有帮助,但是仍然存在问题。
尽管如此,我仍然希望大多数问题由我自己解决。这些,我可以解决。
我将以与原始控件相同的方式布置控件,该控件分为三层:背景圆圈,中间可移动元素(微调器)和顶部透明蒙版。
圈已经完成,我正在绘制旋转器图层。
我希望它看起来像这样:
我目前看起来像这样:
问题是我花了一段时间来获取图像尺寸以告知偏移量,但我真正想要的是简单地使图像锚点指向顶部,因此对偏移量进行了排序
我尝试弄乱alignmentGuide
和frame
这些东西,但是我一定不能很好地理解它们,因为它们似乎被忽略了。
这里是the code snippet的一个图像半径,应该在此发生:
struct RVS_SwiftUISpinner_ItemDisplayView: View {
@State var itemImage: Image
@State var size: CGSize
var body: some View {
return VStack(alignment: .center, spacing: 0) {
self.itemImage
.resizable()
.aspectRatio(contentMode: .fit)
.offset(y: -self.size.height)
.frame(alignment: .top)
}
.frame(width: self.size.width,
height: self.size.height,
alignment: .bottom)
.background(Color(red: 0, green: 1.0, blue: 1.0, opacity: 0.25))
.offset(y: -self.size.height / 2.0)
}
}
有人看到我在做什么错吗?我会继续这样做,最终将找到并解决此问题,但我仍会继续努力。
答案 0 :(得分:0)
好。我想我有:
struct RVS_SwiftUISpinner_ItemDisplayView: View {
@State var itemImage: Image
@State var size: CGSize
var body: some View {
return VStack(alignment: .center, spacing: 0) {
self.itemImage
.resizable()
.aspectRatio(contentMode: .fit)
.frame(alignment: .top)
}
.frame(width: self.size.width,
height: self.size.height,
alignment: .top)
.background(Color(red: 0, green: 1.0, blue: 1.0, opacity: 0.25))
.offset(y: -self.size.height / 2.0)
}
}
我将OUTER对准.top。
向上和向上...