2011-12-08 16 views
1

ユーザーが使用したデータの量を示すミニプログレスバーを作成しようとしています。アニメーション化する必要もなく、設定した変数に基づいてサイズを変更するだけです。だから私が画面をロードすると、どのくらいのプログレスバーがいっぱいになるかは、私がJavaで設定した変数に依存します。Androidの画像を垂直に調整する

私は、これは何もないからイメージを起動し、そのフルサイズに伸ばし、私は偉大である水平プログレスバーとして使用することができます

scale = new ScaleAnimation(0.0f, 1.5f, 1.0f, 1.0f,1.0f, 1.0f); 

を使用することによって、これが水平に作業を取得するために管理しています。

これを垂直にするのは、fromYを0に、toYを私が望む新しいサイズに変更するという単純な問題ではないでしょうか。しかし、これを行うと、fromYを0.0f、toYを2.0fに変更することで、画像は実際に伸びるのではなく同時に動いて伸びます。何らかの理由で画像も位置を移動します。 XMLを使用している場所よりも高い位置から始め、元の位置に移動して、私が設定した新しいスケールに伸びます。それは水平に罰金伸びる理由

私は垂直方向にそれを試してみて、ストレッチするために使用するコードです

scale = new ScaleAnimation(1.0f, 1.0f, 0.0f, 2.0f, 1.0f, 1.0f); 

だから誰かが説明してくださいすることができますが、私は垂直に伸ばすしようとすると、それは突然同じで動くとstretchs時間。

ご協力いただきありがとうございます。

+1

イメージの外にある参照点からイメージを拡大するように思えます。私はあなたがセンターを使いたいと思う。メソッド呼び出しの最後の2つの値は、オブジェクトが拡大縮小されるポイントのx/y座標です。だから、これらがバーの中心であることを確認してください – Wozza

+0

しかし、これはなぜ水平スケーリングの問題ではありませんか?水平方向のスケーリングでは、最後の2つを1.0fにして、画像は同じ場所にとどまります。 – AdamM

+0

実際にそれを考え出した。あなたは最後の2つについては正しかった、彼らは何もしていないように、私はそれらを使いこなし始めた。最後のものを50.0fに変更して終了しました。今は完璧に動作します。歓声 – AdamM

答えて

1

上記のアニメーションの問題を解決したことに感謝しますが、アニメーション化するためのバーが不要であるということに基づいて、ClipDrawableクラスはあなたの人生をより簡単にするかもしれません。 xmlレイアウトで1つを定義してから、コードからクリップレベルを設定します。これにより、指定されたドロワブルを所定の量だけクリップします。それを使用する方法の詳細について

チェックこのアウト:

http://developer.android.com/guide/topics/resources/drawable-resource.html#Clip

希望いくつかの助けのためです。

+0

実際には、私が作成しなければならない次の機能には完璧です。 – AdamM

関連する問題