0

垂直スクロール画面を表示する最良の方法は何ですか? 私のゲームは高さ 2 つの画面を消費します。ユーザーは単純なドラッグまたはスワイプ操作で 2 つの画面間を移動できる必要があります。背景はタイル化されておらず、スプライトが配置されます。このような画面管理を行うための最良の方法は何でしょうか?

4

2 に答える 2

3

ここで 2 つの質問をしました。その第 1 は、タッチ ジェスチャ (スワイプなど) への応答方法です。このブログ投稿と関連するサンプルは、良い出発点です。

2 つ目は、2 つの画面を持つ方法です。これも簡単です。変換行列 ( Matrix.CreateTranslate) を に渡しSpriteBatch.Beginます。これをどのように行うかはあなた次第です。両方の画面で画面の左上を (0,0) にしたい場合は、それぞれに平行移動行列を与え、ディスプレイの高さだけ下に一方を他方より下に平行移動させます。(画面が表示されていない間は、描画を完全にスキップできます。)

ユーザーがスワイプすると、一方の画面が表示されなくなり、もう一方の画面が表示されるように、翻訳をアニメーション化するだけです。

于 2010-09-11T14:21:44.850 に答える
0

これは、ユーザーに画面の上部と下部の半分を表示させたいのか、それとも上部または下部だけを表示させたいのかによって異なります。

2 画面分のコンテンツをScrollViewerに配置し、 ScrollViewer.VerticalScrollbarVisibility を False に設定してみてください。これにより、ユーザーは「画面」間で簡単にドラッグ/スワイプできます。

何かのようなもの:

<ScrollViewer VerticalScrollBarVisibility="Hidden">
    <my:FirstScreen/>
    <my:SecondtScreen/>
</ScrollViewer>

考慮すべきことの 1 つは、ユーザーによる電話の向きの変更を処理するかどうか、または電話を縦向き/横向きにロックするかどうかです。また、最終的にはさまざまな解像度の携帯電話がリリースされ、Windows Marketplace のアプリケーションはフル解像度とハーフ解像度の両方を処理できる必要があると考えています。

于 2010-09-05T02:50:34.180 に答える