Iは、TableLayout
を拡張しLinearLayout
行子供を含み、それらの各々はRelativeLayout
セル(OnClickListener
を有する個々のセル)を含むCustomLayout
ビューを持っています。 CustomLayout
にはScaleGestureDetector
もあり、X/Y軸のスクロール/ドラッグをサポートしています。スケーリング係数が1(スケーリングなし)の場合、すべてが効果的です。OnClickListenerはビューの倍率を考慮していますか?
問題は、各セルのOnClickListener
は、アカウントにCustomLayout
の倍率を取るように見えないし、その後、それが自セルのスケーリングであるということです。したがって、ズームが2倍で現在大きなセルをクリックした場合、実際には、以前のズームレベルから別の小さいセルのタッチターゲットをクリックしたことになります。
これは設計上の問題であるかどうかわかりませんが(この問題に関していくつかのドキュメントを見つけようとしましたが、何も見つかりませんでした)。この問題に関する意見やアイデアはありますか?CustomLayout
のタッチイベントをリッスンし、タッチイベントの位置をズームイン/拡大されたセルにマッピングすることによって、手動でClickListener
を実装する可能性は常に知っています。しかし、より簡単できれいな方法でデフォルトのOnClickListener
を使用できるかどうかを知りたかったのです。