SwiftUI дает мне ошибки и отказывается от сборки, когда я знаю, что код правильный. Например, следующий код работал все 15 минут go. Я попытался обернуть List
в JumpToBookView
в VStack
и добавить Button
под списком, и он начал выплевывать ошибки на моем Image
в BookRow
. Этот код компилировался и отображался в предварительном просмотре до того, как я добавил Button
и VStack
, после того как я удалил их, он все равно не позволит мне предварительно просмотреть представление. Я попытался очистить папку сборки, удалить производные данные и выйти из приложения, все одновременно, но все еще ничего. Нет предварительного просмотра, и проект не будет компилироваться. Для справки, проект в основном UIKit, но я пытаюсь включить в него SwiftUI, хотя это не должно иметь значения, потому что это представление нигде не вызывается. В настоящее время я использую последнюю версию XCode и приложил свой код и снимок экрана с ошибками. Для поиска я также вставлю здесь ошибки. Missing argument label 'imageName:' in call
, Value of type 'Image' has no member 'resizable'
и Cannot infer contextual base in reference to member 'fit'

import SwiftUI
struct JumpToBookView: View {
var body: some View {
List {
BookRow(selected: true)
BookRow(selected: true)
BookRow(selected: true)
BookRow(selected: true)
BookRow(selected: true)
BookRow(selected: true)
}
}
func testJump()
{
print("test")
}
}
struct BookRow: View {
var selected: Bool
var body: some View {
ZStack {
Rectangle()
.fill(Color(RaiseColor.red))
HStack{
Text("1.2 What is an Ecosystem?")
.font(.title)
.fontWeight(.bold)
.foregroundColor(Color(.white))
Spacer()
Image(selected ? "pauseButton" : "playButton")
.resizable()
.aspectRatio(1, contentMode: .fit)
.frame(maxWidth: 25)
.foregroundColor(Color(.white))
}
.padding(.all)
}
}
}
struct JumpToBookView_Previews: PreviewProvider {
static var previews: some View {
JumpToBookView()
}
}
РЕДАКТИРОВАТЬ: я просто хочу добавить, что он также работал с RaiseColor.red
раньше, поэтому не должно быть проблем с этим пользовательским цветом.