Swiftuiの形(例:Square)にテキスト(例えばHI)を追加し、それらを単一のオブジェクトとして機能させたいです。
Swiftuiでテキストを形作る直接的な方法がないようです。
ここに、IMO、ほとんどの簡単なアプローチです。
汎用スキーマ
Text(_any_of_text_)
.background(_any_of_Shape)
_
例えば:
Text("Hello, World!")
.background(Rectangle().stroke())
Text("Hello, World!")
.background(RoundedRectangle(cornerRadius: 4).stroke())
_
これが私がより包括的な答えであると考えるものです。これはXcode 11.5の時点で動作します。
Text(question)
.fixedSize(horizontal: false, vertical: true)
.multilineTextAlignment(.center)
.padding()
.frame(width: 300, height: 200)
.background(Rectangle().fill(Color.white).shadow(radius: 3))
_
ノート:
この例の最後の結果は、テキストがCUEカードのようなキューカード内に表示されるように見えるようになります。
新しいSwiftuiビューを作成し、あなたの目標を作成するためにZ-Stackを利用してください。
struct YourCustomObject: View {
var body: some View {
ZStack {
Rectangle()
.fill(Color.secondary)
.frame(width: 200, height: 200)
Text("Your desired text")
.foregroundColor(.white)
}
}
}
_
Text("Hi")
.frame(width: 40, height: 40, alignment: .center)
.background(Color.black)
.clipShape(Rectangle())
_