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

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

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

Q&A

受付中

Expected declarationについて

taneda
taneda

総合スコア0

1回答

0グッド

0クリップ

189閲覧

投稿2022/11/06 05:37

前提

ここに質問の内容を詳しく書いてください。

SwiftでタイマーAppを作成中です。
エラーコードの意味がわからずで作業が止まっております。

実現したいこと

Expected declarationの原因を知りたい

エラーメッセージ Expected declaration ### 該当のソースコード Swift ソースコード

import SwiftUI

struct ContentView: View {
var body: some View {
NavigationView {

ZStack { Image("backgroundTimer") .resizable() .edgesIgnoringSafeArea(.all) .aspectRatio(contentMode: .fill) VStack(spacing: 30.0) { Text("残り10秒") .font(.largeTitle) HStack { Button(action: { }) { Text("スタート") .font(.title) .foregroundColor(Color.white) .frame(width: 140, height: 140) .background(Color("startColor")) .clipShape(Circle()) } Button(action: { }) { Text("ストップ") .font(.title) .foregroundColor(Color.white) .frame(width: 140, height: 140) .background(Color("stopColor")) .clipShape(Circle()) } } } } } } .navigationBarItems(trailing: NavigationLink(destination: SettingView()) { Text("秒数設定") } ) }

struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答1

0

質問欄のコードが「コードの挿入」の中にちゃんと記載されていませんね・・
エラーの原因を探すのが大変になってしまいますので、ソースコードのインデントも気をつけて揃えておくと良いかもしれませんね。

次のような感じで正しい位置に.navigationBarItemsを記述してあげると解消されるのかなと思いますが、いかがでしょうか。

swift

1 .navigationBarItems(trailing: 2 NavigationLink(destination: SettingView()) { 3 Text("秒数設定") 4 } 5 ) 6 } // この行が`NavigationView`の{に対応します。

navigationBarItemsはDeprecatedになっているみたいですので、注意して使った方が良いみたいですね。
navigationBarItems(leading:) | Apple Developer Documentation

追記です。

コメントありがとうございます。

ContentView全体のコードを記載します。
*手元の環境ではこれでエラーはなくなりました

swift

1struct ContentView: View { 2 var body: some View { 3 NavigationView { 4 ZStack { 5 Image("backgroundTimer") 6 .resizable() 7 .edgesIgnoringSafeArea(.all) 8 .aspectRatio(contentMode: .fill) 9 VStack(spacing: 30.0) { 10 Text("残り10秒") 11 .font(.largeTitle) 12 HStack { 13 Button(action: { 14 }) { 15 Text("スタート") 16 .font(.title) 17 .foregroundColor(Color.white) 18 .frame(width: 140, height: 140) 19 .background(Color("startColor")) 20 .clipShape(Circle()) 21 } 22 Button(action: { 23 }) { 24 Text("ストップ") 25 .font(.title) 26 .foregroundColor(Color.white) 27 .frame(width: 140, height: 140) 28 .background(Color("stopColor")) 29 .clipShape(Circle()) 30 } 31 } 32 } 33 } 34 .navigationBarItems(trailing: 35 NavigationLink(destination: SettingView()) { 36 Text("秒数設定") 37 } 38 ) 39 } 40 } 41}

投稿2022/11/06 07:04

編集2022/11/06 08:57
退会済みユーザー

退会済みユーザー

総合スコア0

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

taneda

2022/11/06 08:41

ご回答いただきありがとうございます。 以下のように修正したもののエラーが変わることなく表示されておりました。 import SwiftUI struct ContentView: View { var body: some View { NavigationView { ZStack { Image("backgroundTimer") .resizable() .edgesIgnoringSafeArea(.all) .aspectRatio(contentMode: .fill) VStack(spacing: 30.0) { Text("残り10秒") .font(.largeTitle) HStack { Button(action: { }) { Text("スタート") .font(.title) .foregroundColor(Color.white) .frame(width: 140, height: 140) .background(Color("startColor")) .clipShape(Circle()) } Button(action: { }) { Text("ストップ") .font(.title) .foregroundColor(Color.white) .frame(width: 140, height: 140) .background(Color("stopColor")) .clipShape(Circle()) } } } } } } .navigationBarItems(trailing: NavigationLink(destination: SettingView()) { Text("秒数設定") } ) } struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } }

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
86.02%

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

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

質問する

関連した質問

同じタグがついた質問を見る