無限のセルグリッドの世界地図のような無限のボードを描きたい。ユーザーはそれをスクロールすることができますが、データはメモリに保存されます。私。私は彼らが画面に表示され、非表示にそれらを削除するときに、セルを設定します。AbsoluteLayoutが推奨されない場合、無限の2Dボード/マップを描画する方法は?
Androidでこれを実装する方法は?
javascriptとjavaでは、クリッピングのない2つのネストされた絶対ペインまたはdivを使用します。
無限のセルグリッドの世界地図のような無限のボードを描きたい。ユーザーはそれをスクロールすることができますが、データはメモリに保存されます。私。私は彼らが画面に表示され、非表示にそれらを削除するときに、セルを設定します。AbsoluteLayoutが推奨されない場合、無限の2Dボード/マップを描画する方法は?
Androidでこれを実装する方法は?
javascriptとjavaでは、クリッピングのない2つのネストされた絶対ペインまたはdivを使用します。
RelativeLayoutでは、ビューの左と上のマージンをx座標とy座標のように変更することで同じことができます。
最善の方法は、ViewサブクラスのonDraw(キャンバスキャンバス)メソッドをオーバーライドして、表示する領域をペイントすることです。あなたのゲームキャラクターを中央に置き、invalidate()を使ってViewを再描画します。
地図をスムーズに動かしたい。それはキャンバスの描画でうまくいくのでしょうか? –
ビューを右、左、上または下にドラッグ(またはスクロール)できるようにするには、onScroll()イベントリスナーをオーバーライドし、新しいXおよびYに基づいてキャンバスを再描画します(ビューオブジェクトでinvalidateを呼び出します)。 –
はい、しかしそれは十分に速く働くでしょうか? –
いくつかのサンプルをポイントできますか?または、非常に単純化されたコードを提供しますか? –