Swift 5、SpriteKit、SKTileMap を使用しています。ポップオーバーに相当するものを使用したいと思います。他のアプリでポップオーバーをかなり頻繁に使用するため、この用語を使用しています。基本的に、小さなウィンドウが表示され、何かを読んで [OK] を押すか、少し情報を追加して [OK] を押します。私がどうすればよいかを理解しようとしているのは、SpriteKit で似たようなものです。
目的は、ユーザーがタイルを長押しすると、タイルに関する情報を含む小さなボックスがポップアップすることです。地形は何ですか?どのようなリソースがありますか? 都市はありますか?そこにプレイヤーはいますか?など。ビューである必要はありませんが、かなりの量のテキストがあるだけでなく、閉じるボタンがあり、おそらくいくつかの小さなグラフィックがあるので、それが進むべき道だと思います。 、リソースに対応するシンボルなど。ここに私がすでに持っているものがあります。私は長押しジェスチャー認識機能を持っています。シミュレーターのコンソールに必要なすべての情報を既に出力できます。私が理解する必要があるのは、いくつかのことです。
- 必須: ウィンドウを作成し、情報を入力します。
- オプション: 画面のタイルおよび/または中央にアンカーします。私はまだ最善の解決策を決めていません。
- オプション: 薄暗い背景 (おそらくアルファの微調整)
私が持っている現在のコードは、実際には非常にスムーズに動作します。私は、カメラをピンチしてズームし、パンのジェスチャーをうまく使います。JSON ファイルからマップを読み込みます。私は実際にそれをコアデータ、データベースにロードし、データベースに対するクエリから引き出します。そうすれば、何らかのアクションを実行すると、データベースにヒットするだけです。タイル 5,5 には何がありますか? データベースにクエリを実行するだけです。それはうまくいきます。SpriteKit でポップオーバー ウィンドウを表示する方法がわかりません。マップが入っているコンテンツ ビューに実際のポップオーバーを追加しようとしましたが、画面が少し暗くなります。それは良いアンカーではないと思います。