SwiftUIでalert()を使ってアラート表示している箇所があるが、いつの間にか表示されたりされなかったりする様になっていた。
ネットで調べてもしっくりくる回答がなかった。
画面遷移直後に表示される箇所があり、それが表示されると以降も問題ないことがわかった。
onApper()でフラグをセットし表示する様にしていたが、ひょっとするとこれが悪いのかもしれない。
Viewの階層が深くて、Alertを表示した時にその階層のどこかに紛れ込んでいて隠れて見えてないということかもしれない。
表示に使用しているフラグは確かにtrueになっているし、描画の箇所にも来ている。
それならばとDispatchQueue.main.asyncAfter()でフラグをセットするのを遅らせてみたら、しばらく試した限りではうまくいってそうだ。
この例ではViewは簡単なので問題はでていないが、対処例ということで載せておく。