SwiftUI различается maxWith между элементами в стекеIOS

Программируем под IOS
Ответить
Anonymous
 SwiftUI различается maxWith между элементами в стеке

Сообщение Anonymous »

Я хочу иметь представление, которое показывает два элемента, созданных с помощью customShape (по сути, это та же форма, что и RoundedRectangle(cornerRadius:25.0), но в сочетании с обычным прямоугольником, чтобы сделать два угла заостренными). Проблема в том, что когда я пытаюсь объединить эти два представления (создав Capsule(), я не могу изменить его пропорции. Я бы хотел, чтобы изображение занимало только 25% таблетки, а текст - 75%. Но я не могу этого сделать. Вот фотография того, что у меня есть:
Изображение

И что я хочу иметь:
Изображение
Я пробовал использовать GeometryReader, но не знаю, хорошее ли это решение, или я не знаю, как его использовать, но получаю следующее:
Изображение

Код основного представления:

Код: Выделить всё

struct CardHomeContent: View {
var body: some View {
ZStack {
RoundedRectangle(cornerRadius: /*@START_MENU_TOKEN@*/25.0/*@END_MENU_TOKEN@*/)
HStack(spacing:0) { //Contenido
ImageContent(image:"Croissant")
TextCardContent()
}
}
.clipShape(RoundedRectangle(cornerRadius: 25))
.padding(.horizontal)
}
}
ImageView:

Код: Выделить всё

struct ImageContent: View {
let image : String

var body: some View {
ZStack {
Image(image)
.resizable()
.scaledToFill()
}
}
}
И TextView:

Код: Выделить всё

struct TextCardContent: View {
let uiFont: UIFont = .systemFont(ofSize: 13)
let description = "Unos croissants que harán chuparte los dedos llenos de mantequilla"
var justifiedTest: String {
description.justified(font: uiFont, maxWidth: 165)
}
var body: some View {
ZStack {
RoundedRectangleCustomShapeRight().foregroundStyle(Color.white)
HStack {
VStack {
Text("Croissants tradicionales").bold().lineLimit(2).minimumScaleFactor(0.4)
Text(description).font(.footnote).foregroundStyle(Color.gray).lineLimit(3).minimumScaleFactor(0.5)
.multilineTextAlignment(.leading)
}
.padding(.all)
Text(">")
.padding(.trailing)
}

}
}
}
Поэтому я был бы признателен, если бы кто-нибудь подсказал какую-нибудь идею.


Подробнее здесь: https://stackoverflow.com/questions/781 ... in-a-stack
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»