#swift #swiftui #cgrect
#swift #swiftui #cgrect
Вопрос:
Мой код выглядит примерно так:
import SwiftUI
struct MainView: View {
var body: some View {
CGRect(x: 20, y: 20, width: 100, height: 100)
}
}
Однако я получаю сообщение об ошибке:
Static method 'buildBlock' requires that 'CGRect' conform to 'View'
Как я могу использовать CGRect с SwiftUI?
Комментарии:
1. Какова ваша цель? Ваш код не имеет смысла; вас запрашивают представление, и вы отвечаете измерением. Что вы пытаетесь сказать этим странным ответом?
2. Я бы поработал с [учебным пособием Apple по SwiftUI] ( developer.apple.com/tutorials/swiftui ). Вы вступаете в совершенно новую парадигму от UIKit.
3. @matt Я пытался нарисовать прямоугольник, я не понимал этого задолго до того, как CGRect — это всего лишь некоторые измерения.
Ответ №1:
Вероятно, вы хотели этого
struct MainView: View {
var body: some View {
Rectangle()
.frame(width: 100, height: 100)
}
}
в SwiftUI мы должны просто размещать представления body
вместо того, чтобы что-то рисовать.
Примечание: существуют разные варианты расположения вида на экране, в зависимости от потребностей, но я бы рекомендовал избегать жесткого кодирования позиции (например, x: 20, y: 20), потому что это даст разный результат на разных устройствах.