Как я могу вписать форму в быстрый интерфейс, чтобы приспособить длину и ширину текстового представления - PullRequest
0 голосов
/ 20 апреля 2020

This is what I want to happen in my code and I want the rectangle to scale to whatever font size.

ZStack{
                        RoundedRectangle(cornerRadius: 8).foregroundColor(.red).scaledToFit()//.frame(width: 200, height: 25)
                        HStack{
                            Image(systemName: "tag.fill").foregroundColor(.white)
                            Text("Tickets Not Available").font(.headline).foregroundColor(.white).fixedSize(horizontal: true, vertical: false)
                        }
                    }.scaledToFit()

Как вы можете видеть, мои представления помещаются в zstack, так что прямоугольник со скругленными углами может быть фоном текстового представления. Я пробовал так много разных вещей, например, где поместить .scaledtofit, и это просто дает мне результаты дурацкого каждый раз.

Ответы [ 2 ]

1 голос
/ 20 апреля 2020

это то, что вам нужно (обратите внимание на Image.resizable):

import SwiftUI

struct ContentView: View {

var body: some View {
    ZStack{
        RoundedRectangle(cornerRadius: 8).foregroundColor(.blue)
        HStack{
            Image(systemName: "tag.fill").resizable().padding(4).foregroundColor(.white).scaledToFit()
            Text("Get Tickets").font(.headline).foregroundColor(.white)
        }
    }.fixedSize()
}
0 голосов
/ 20 апреля 2020

Вопрос немного неясен, но если вы пытаетесь вписать фигуру в текстовое представление, и вы хорошо избавляетесь от scaledToFit, тогда код должен быть:

RoundedRectangle(cornerRadius: 8).foregroundColor(.red).frame(width: textView.width, height: textView.height)

Надеюсь, это помогает, и, надеюсь, вам не нужно было использовать scaledToFit. Если бы вы сказали мне в комментариях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...