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

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

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

Q&A

解決済

1回答

749閲覧

SwiftUIでListの繋ぎ目がおかしい

haaaa

総合スコア2

0グッド

0クリップ

投稿2023/01/12 13:22

前提

SwiftUIでアプリを作成している最中、画像の矢印よりも上と下で分かれてしまってこの後にも色々追加したいのですが思ったようにできてません。

イメージ説明

実現したいこと

分かれずにListを表示できるようにしたいです。

該当のソースコード

SwiftUI

1// 2// ContentView.swift 3// ConpassApiProject 4// 5// Created by cmStudent on 2023/01/06. 6// 7 8import SwiftUI 9 10struct ContentView: View { 11 @State var keyWord: String = "" 12 @State var keyWordArray: [String] = [] 13 var body: some View { 14 15 VStack { 16 HStack { 17 Spacer() 18 TextField("キーワードを入力",text: $keyWord) { 19 }.textFieldStyle(RoundedBorderTextFieldStyle()) 20 21 Button(action: { 22 if self.keyWord.isEmpty {//中身が空なら検索できない 23 print("中身は空です") 24 }else { 25 self.keyWordArray.append(self.keyWord)//入力内容を配列に追加 26 self.keyWord = "" 27 } 28 29 }) { 30 Text("検索") 31 .foregroundColor(Color.white) 32 } 33 .padding(10) 34 .background(Color.red) 35 .cornerRadius(10) 36 Spacer() 37 } 38 List { 39 if keyWordArray.isEmpty { 40 Text("・キーワードを入力して検索してください\n※入力しない場合検索できません") 41 .foregroundColor(Color.gray) 42 .font(.system(size: 15.0)) 43 }else { 44 Section { 45 ForEach (0 ..< keyWordArray.count, id: \.self) { item in 46 Text(keyWordArray[item]) 47 } 48 49 } header: { 50 Text("昨日") 51 } 52 } 53 54 } 55 Spacer() 56 } 57 58 } 59} 60 61 62struct ContentView_Previews: PreviewProvider { 63 static var previews: some View { 64 ContentView() 65 } 66}

試したこと

Listのバグかと思い、調べましたが同じような方がいらっしゃいませんでした。
さらに、youtubeにアップされているコピペしたアプリで作ってもなってしまうアプリもありました。

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

xcodeのバージョンのバグでしょうか?
Version 13.3 (13E113)←これです。

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

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

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

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

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

TakeOne

2023/01/14 02:49

上と下で分かれてしまうってどういう意味ですか? 下(List)の背景色を上と合わせたいということですか?
haaaa

2023/01/14 02:55

そうです!
guest

回答1

0

ベストアンサー

バグでもなんでもなく、Listの背景色がデフォルトで薄いグレーになっているだけです。

Xcode13のSwiftUIでListの背景色を変えるには、

https://dev.classmethod.jp/articles/swiftui-list-background-color/

にあるように UITableView.appearance().backgroundColor を変更します。

なお、Xcode14からは、List表示に内部でUITableViewを使用しなくなったため、上記の方法ではうまくいきません。

https://zenn.dev/tsuzuki817/articles/fb5f6261945af6

にあるように scrollContentBackground でデフォルトの背景色をhiddenに設定した上で、 background で色を設定する必要があります。

投稿2023/01/14 05:35

TakeOne

総合スコア6299

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問