2017-01-06 11 views
6

私はオブジェクトのサイズを変更し、相互作用でそれを回転させることができるアンドロイドでインタラクションアニメーションを実装しようとしています。インタラクティブなAndroidのアニメーション

enter image description here

これは私が実装しようとしますが、似たようなのです正確に何ではありません。

角度線 'p'を変更し、角度 'a'を変更する必要があります。 'p' w.r.tセンターを移動すると、図形のサイズが変更できるようになります。

私は既にアニメーションとアニメータークラスを試しましたが、目的を十分に果たしていません。

私はコードを要求していない、私はそれを実装することができます私はちょうどホーにポインタが必要です。

+0

カスタムビューを作成し、 'onDraw'メソッドをオーバーライドしてサークルとレイを描画することができます。次に、ジオメトリ操作を処理するためにタッチリスナーを追加してください。 – akash93

+0

タッチのやりとり、描画、またはあなたが望むものを描くための数学については不明ですか? –

+0

@ShaneDuffy私はタッチの相互作用について知っています、私は描画のものと同じものの操作については不明です。 –

答えて

1

私が言うことができる限り、線、円、および 'a'ラベルが付いた弧を 'p'に関して変更することが必要です。これはユーザーが触れる場所です。

ライン

この部分では、すでにXを取得する方法を知っており、Yは、ユーザーがクリックすることを前提座標、比較的簡単です。まず、onDrawメソッドをオーバーライドする必要があります。このメソッドは、描画できるcanvas要素を提供します。ユーザーが画面にタッチすると、画面中央からそれぞれのX座標とY座標まで非常に簡単にdraw a lineを入力できます。

サークル

キャンバスも容易に特定半径で座標指定されたXとYの周りに円を描くdrawCircle機能を有し、この部分はまた、比較的簡単であろう。ユーザーのタッチイベントに対応する円を描画するには、distance functionを使用して、ユーザーのタッチのX座標とY座標から画面座標の中心までの距離を計算し、サークルの半径として使用します。動的に弧を描く

アーク

が説明するのは比較的困難であると私のガールフレンドは彼女と一緒に夕食を食べに行くために私をしつこいですが、this質問は非常に明確に答える、私は思います。

また、以前のすべての図面が重ねて表示されないように、おそらくタッチイベントごとにキャンバスをクリアする必要があります。乾杯。

+1

ありがとうございます。この種の仕事。少なくとも私に指示を与えた。私はこれで始まり、やっとどこかに着いた。詳細な説明をありがとう。 :) –

関連する問題