質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%

Q&A

解決済

1回答

2257閲覧

Pickerで選択する要素を、ImageとTextで並べて表示させたい

tomaa

総合スコア84

0グッド

0クリップ

投稿2020/09/02 09:54

編集2020/09/02 09:55

前提・実現したいこと

SwiftUIでアプリの開発をしています。

PickerpickerStyle(SegmentedPickerStyle())でスタイルを変更した際に、選択する要素を、ImageとTextを並べた状態で表示したいです(下記画像の矢印の場所へImageを表示)。
イメージ説明

しかし、希望どおりの表示になりません。
対応の方法をご存知の方おりましたら、ご教授いただけないでしょうか?

該当のソースコード

ベースのコード

SWIFT

1import SwiftUI 2 3struct PickerTest: View { 4 5 @State var selection: Int = 0 6 7 var body: some View { 8 NavigationView{ 9 Form{ 10 Picker(selection: $selection, label: Text("")) { 11 Text("1番目").tag(0) 12 Text("2番目").tag(1) 13 }.pickerStyle(SegmentedPickerStyle()) 14 } 15 } 16 } 17} 18 19struct PickerTest_Previews: PreviewProvider { 20 static var previews: some View { 21 PickerTest() 22 } 23}

試したこと

HStackを利用する方法を試しましたが、下記画像のように、項目が4つになっていまい選択の機能も正常にうごきません。
イメージ説明

SWIFT

1import SwiftUI 2 3struct PickerTest: View { 4 5 @State var selection: Int = 0 6 7 var body: some View { 8 NavigationView{ 9 Form{ 10 Picker(selection: $selection, label: Text("")) { 11 HStack { 12 Image(systemName: "circle") 13 Text("1番目") 14 }.tag(0) 15 HStack { 16 Image(systemName: "circle") 17 Text("2番目") 18 }.tag(1) 19 }.pickerStyle(SegmentedPickerStyle()) 20 } 21 } 22 } 23} 24 25struct PickerTest_Previews: PreviewProvider { 26 static var previews: some View { 27 PickerTest() 28 } 29} 30

補足情報(FW/ツールのバージョンなど)

Xcode: Version 11.7

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

SegmentedPickerStyle の定義みる(Jump to Definition)と下記のように記載があります。
TextImage のみなので
現時点では同じようなUIを自作で作るか,絵文字使うしかないと思われます。

Note: The segmented picker style supports Text and Image segments only.
Any other view results in a visible, but empty, segment.

投稿2020/09/02 18:53

TakuyaAso

総合スコア1361

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tomaa

2020/09/03 02:59

ご回答ありがとうございます。 参考にさせていただきます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問