私はxmlにLinearLayoutを持っています:
<LinearLayout
android:id="@+id/progress"
android:layout_width="fill_parent"
android:layout_height="@dimen/progress_height"
android:layout_alignParentBottom="true"
android:baselineAligned="false"
android:orientation="horizontal" />
そして、動的にいくつかの別の LinearLayouts を生成し、それらを等間隔で「進行」させたいと思います。次に例を示します。
- 最初に追加された LinearLayout はすべてのスペースを占有します。
- 2 番目の LL は、スペースの 50% を 1 LL と共有します。
- 3 番目の LL は、1LL および 2LL と 33% のスペースを共有します。
- 等々...
すべての LinearLayout にはランダムな背景色があり、次のように書きました。
mProgress = (LinearLayout) findViewById(R.id.progress);
.
.
.
LinearLayout prog = new LinearLayout(this);
prog.setBackgroundColor(CommonUtils.getNextRandomColor());
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.MATCH_PARENT, 1.0f);
prog.setLayoutParams(params);
mProgress.addView(prog);
ユーザーがボタンを押すと、異なる色の別の LL が生成されます。
私の方法はうまくいきません。レイアウトに背景色はありません。
色がスペースを均等に共有する、ある種のプログレスバーを達成するための別のはるかに簡単な方法があるでしょうか?