我想使进度条在进度条下方居中显示。目前没有。 环顾四周,但没有找到一个对话框就找不到任何方法(我只是用它来显示满分100分)
这是我的代码部分的样子:
ProgressBar progressBar = (ProgressBar) findViewById(R.id.ecoProgress);
progressBar.setMax(100);
progressBar.setProgress(scoreg);
progressBar.setPadding(50,0,50,0);
if (scoreg < 34)
progressBar.getProgressDrawable().setColorFilter(Color.parseColor("#C43F3F"), android.graphics.PorterDuff.Mode.SRC_IN);
else if (scoreg < 67)
progressBar.getProgressDrawable().setColorFilter(Color.parseColor("#DB8B21"), android.graphics.PorterDuff.Mode.SRC_IN);
else
progressBar.getProgressDrawable().setColorFilter(Color.parseColor("#34DB21"), android.graphics.PorterDuff.Mode.SRC_IN);
这是布局xml:
<ProgressBar
android:layout_width="match_parent"
android:layout_height="50dp"
style="@android:style/Widget.Holo.ProgressBar.Horizontal"
android:id="@+id/ecoProgress"
/>
答案 0 :(得分:0)
出于您的目的,我认为最好使用Seekbar。您可以这样做:
SeekBar seekBar = findViewById(R.id.seekbar);
final TextView textView = findViewById(R.id.textview);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean b) {
textView.setText(String.valueOf(progress));
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
xml布局:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:id="@+id/textview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="0" />
<SeekBar
android:id="@+id/seekbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:max="100" />
</LinearLayout>