Код: Выделить всё
Picker("", selection: $captureDelegate.userSelectedPeopleCount) {
ForEach(-1...4, id: \.self) { i in
HStack(spacing: 68) { //HStack shown the picker is collapsed
Image(systemName: i == -1 ? "eye.slash.fill" : self.images[i])
.resizable()
.frame(width: 17, height: 17)
.rotationEffect(rotationAngle)
Text(i == -1 ? "" : "\(i)")
.font(.system(size: 40))
.rotationEffect(rotationAngle)
}
.tag(i)
.rotationEffect(rotationAngle)
}
}
< /code>
Я хочу добавить изображение между изображением и текстом, когда сборщик расширяется, и когда пользователь нажимает на один из вариантов выше -1 (в то время как не разблокирован Pro), он должен перейти на страницу покупки. Это моя попытка: < /p>
Picker("", selection: $captureDelegate.userSelectedPeopleCount) {
ForEach(-1...4, id: \.self) { i in
HStack(spacing: 68) { //HStack shown the picker is collapsed
Image(systemName: i == -1 ? "eye.slash.fill" : self.images[i])
.resizable()
.frame(width: 17, height: 17)
.rotationEffect(rotationAngle)
if i >= 0 && purchaseManager.hasUnlockedPro {
Image(systemName: "crown.fill")
.resizable()
.frame(width: 17, height: 17)
.rotationEffect(rotationAngle)
}
Text(i == -1 ? "" : "\(i)")
.font(.system(size: 40))
.rotationEffect(rotationAngle)
}
.tag(i)
.rotationEffect(rotationAngle)
}
}
< /code>
Результат такова, что даже не показывает это новое изображение, но я также попытался заменить текст с ним, и оно также просто пусто: < /p>
if i >= 0 && !purchaseManager.hasUnlockedPro {
Image(systemName: "crown.fill")
.resizable()
.frame(width: 17, height: 17)
.rotationEffect(rotationAngle)
} else {
Text(i == -1 ? "" : "\(i)")
.font(.system(size: 40))
.rotationEffect(rotationAngle)
}
Подробнее здесь: https://stackoverflow.com/questions/795 ... tui-picker