1

質問「AbsoluteLayoutの便利な代替手段は何ですか?」よく聞かれる質問のようですが、実際には答えられません。私の状況は次のとおりです。

円の間の距離がすべての可能な表示サイズに比例するように、円を配置したいと思います(簡単にするために、テストにRadioButtonを使用しました)。

また、onTouchEventに一致する円の位置を知る必要があります。

これは、(実行時に)defaultDisplayの幅と高さを取得できるため、AbsoluteLayoutを使用するとかなり簡単に思えます。したがって、オブジェクトを表示メトリックに対してAbsoluteLayoutに配置できます。

明らかな理由でAbsoluteLayoutを避けたいのですが、RelativeLayoutは、私が知る限り、「そのオブジェクトを他のオブジェクトのすぐ隣に置く」またはその下などとしか言えないため、代替手段ではないようです。これを修正する方法は?

4

2 に答える 2

2

私の意見では、目標を達成するための最良の方法は、Canvasを使用してすべてを自分で描くことです。Canvasには、実行時の画面の情報があり、描画するものを完全に制御できます。

于 2011-10-08T11:44:57.570 に答える
0

独自の形状を描画するだけで(そしてすべての通常のタッチイベントを処理する必要があり)、同じビューで他のUIウィジェットを必要としない場合は、を使用しますCanvas

このビューでウィジェットが必要な場合、唯一のオプションはAbsoluteLayoutです。

于 2011-10-08T12:51:00.543 に答える