48

Androidで不確定な水平プログレスバーを表示するにはどうすればよいですか?プログレスバーのアニメーションは、0から100まで開始し、100から0まで継続的に戻る必要があります。ホイールプログレスバーを探していません。

4

5 に答える 5

47

setIndeterminate私はそれが無限の水平プログレスバーを与えることをすでに知っていました。ただし、水平になることを除けば、ローディングホイールと似ています。私の質問を見ると、私は0から始まり100まで続く水平バーを探していました(徐々に増加します)。Androidでこれを実現したい場合は、以下のようにプログレスバーを使用する必要があります。

 <ProgressBar
    android:id="@+id/progress_horizontal"
    android:indeterminateOnly="false"
    android:indeterminateDrawable="@drawable/progress_indeterminate_horizontal"
    android:progressDrawable="@drawable/progress_horizontal"
    android:minHeight="24dip"
    android:maxHeight="24dip" 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"/>

プログレスバーの背景を変更したかったので、ProgressDrawableとIndeterminateDrawableを変更しました。元のドローアブルはの下にありframeworks/base/core/res/res/drawableます。それらをプロジェクトにコピーし、必要に応じて色を変更します。

進行状況のカウントを更新し、を実行するスレッドを作成しますThread.Sleep。次に、UIスレッドのプログレスバーを更新するハンドラーにメッセージを送信します。

于 2011-06-23T06:59:32.097 に答える
15

ProgressBarのメソッドsetIndeterminateを使用します。

android.widget.ProgressBar bar = new android.widget.ProgressBar(context);
bar.setIndeterminate(true);

しかし、ええ、あなたはこれを開発者のドキュメントでかなり早く見つけることができたでしょう。

http://developer.android.com/reference/android/widget/ProgressBar.html#setIndeterminate%28boolean%29

于 2011-06-23T05:15:43.933 に答える
11

少し遅れるかもしれませんが、次のようなことができます。

<ProgressBar
    android:id="@+id/progress"
    android:layout_width="match_parent"
    android:layout_height="10dp"
    android:indeterminate="true"
    style="?android:attr/progressBarStyleHorizontal" />

それが誰かを助けることを願っています!

于 2018-10-03T13:09:46.040 に答える
9

Vinoth Answerを拡張するために、ここに準備ができたコードがあります:

<ProgressBar
        android:id="@+id/progressBarLoadingRecite"
        android:indeterminateDrawable="@android:drawable/progress_indeterminate_horizontal"
        android:minHeight="24dip"
        android:layout_marginTop="20dip"
        android:indeterminate="true"
        android:maxHeight="24dip"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"/>
于 2016-01-05T08:39:13.307 に答える
5

プログレスバーを定義するxmlで、次のように追加できます

style="@android:style/Widget.ProgressBar.Horizontal"
于 2015-06-09T15:38:39.493 に答える