イメージタイル(そのスケール)の位置を決めるためにいくつかのFrameLayoutsを使用するタイル型のパンnズームコンポーネントがあります。スケール)とコントロール(移動もスケーリングもしません)。それはうまく動作します。Android - ビューを配置するためにビューのサイズを取得する
マーカは、topMarginとleftMarginを持つFrameLayoutに配置されます。ここまでは順調ですね。
マーカーをタッチすると、触れたマーカと同じ位置にある小さなポップアップを開く必要があります()が、ポップアップのサイズでオフセットされています。つまり、ポップアップが幅100ピクセル、高さ50ピクセルで、タッチされたマーカーが800 xと1100 yの場合、ポップアップは750 x(ポップアップの幅からポップアップの幅の半分を差し引いた位置)と1050 y (マーカの位置からポップアップの高さを差し引いた位置)。エフェクトはツールチップのようなもので、マーカーなどの小さなポイントが表示されます。
ポップアップのサイズは、表示するテキストに基づいて柔軟に計算する必要があります。
明らかに、レイアウトが起こるまで、寸法は利用できません。これらのディメンションを取得し、それに応じて対応する最良の方法は何ですか?
(RelativeLayoutはオプションではないことを言及する必要があります)
TYIA。
/EDIT 私はonMeasureとonLayoutで子供の寸法を得ることができますが、これらのハンドラの1つに新しいレイアウトを適用すると無限ループが作成されます。最初のパスをキャッチするフラグを設定しましたうまくいかない。私は更新された質問は "私は情報を得ることができ、どのように反応し、それを配置すべきか知っているからでしょうか?