2017-07-01 3 views
0

問題:私はカスタムレイアウトを持っています。次の方法でスケールすると、すべての子供が正しい位置に描画されますが、座標を取得しても、前の場所をタッチしてからonClick子に電話をかけます。座標の子を変更しないスケールレイアウト後にAndroid Java

質問:。私が知ってほしい私はいくつかの方法 でそれを修正することができますか、それは手動の方法でそれを修正する必要があります任意の簡単な方法がある(とにかく私はこの問題を解決するための任意のアイデアを持っていない)

protected void dispatchDraw(Canvas canvas) { 
    canvas.save(); 
    canvas.scale(mScaleFactor, mScaleFactor, mPivotX, mPivotY); 
    super.dispatchDraw(canvas); 
    canvas.restore(); 
} 

1週間近く近づいて、この問題に取り組みましたが、何か助けや助言をいただければ幸いです。

答えて

0

キャンバスを使用して拡大/縮小すると、ビューの外観は変更されますが、基になるビューは変更されません。そのため、1つの場所に見えるものに触れると、コードは別の場所を報告します。

this questionと受け入れられた回答をご覧ください。座標のマッピングを進める方法についてのアイデアを得ることができます。

こちらがお役に立てば幸いです。

関連する問題