LoginSignup
0
1

More than 3 years have passed since last update.

初めてのアプリ トラブル日記 swift--NavigationLinkとForEach/Listの相性悪っ

Posted at

ユーザが書いたブログのデータをrealmから取得して、タイトルだけを一覧にして、タイトルをNavigationLinkにしてクリックできるようにしたいと思っていました。

一覧はForEachかListループして、クロージャの中でNavigationLinkを書く。下記のようなイメージ:
ForEach(diaries!, id: .self){ diary in
NavigationLink(destination:DiarycontentView(diaries: diary),label:{
Text(diary.diaryTitle)
})
}

シミュレータで確認すると、タイトルをクリックし、DiarycontentViewへ遷移した途端、一覧ページへ戻っちゃう奇妙現象発生でした。(Qiita初心者で画像/動画添付できず許してください)

調べてみてStackoverFlowも色々見ました。先輩にも見てもらって、解決案が二つでした。
①NavigationLinkをクロジャーの中ではなく、ForEachループの外へ移動。
②ForEachの外でさらにScrollViewを使う。 
↑こちらの記事を参照:https://masamichi.me/development/2019/10/21/swiftui-list-multiple-navigationlink.html

②の方法が完璧に解決できました!

けど、こういう記事一覧みたいなのは、NavigationLinkじゃなくて他にもっといいやつがありますよねきっと。みなさんもしご存知でしたら、ぜひお教えいただけますと幸いです!知りたいです!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1