mIncButton = (Button) v.findViewById(R.id.Increment);
mIncButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//mProgress.incrementProgressBy(1);
//mProgress.setProgress(100 * mProgress.getProgress());
mProgress.setProgress(0);
mProgress.setMax(100);
mProgress.setProgress(mProgress.getMax()/100*5);
}
});
我用不同的方法进行了尝试,但我无法获得它 我只需要与ONCLICK视图一起做。
答案 0 :(得分:1)
在外面维持一个柜台。仅在xml中设置max。
int progress = 0;
mIncButton = (Button) v.findViewById(R.id.Increment);
mIncButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(progress < 100)
progress += 5;
mProgress.setProgress(progress);
}
});
mDecButton = (Button) v.findViewById(R.id.Decrement);
mIncButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(progress > 0)
progress -= 5;
mProgress.setProgress(progress);
}
});
希望它会有所帮助:)
答案 1 :(得分:0)
我也有类似的问题。我正在创建一个测验,如果用户给出正确的答案,则进度条必须增加,如果用户给出错误的答案,则进度条必须减少。所以我只是这样做了。
int PROGRESS_BAR_INCREMENT = 10;
ProgressBar mProgress;
mProgress = (ProgressBar) findViewById(R.id.Progress_Bar);
//for right answer
mProgress.incrementProgressBar(PROGRESS_BAR_INCREMENT);
//for the wrong answer
mProgress.incrementProgressBar(-PROGRESS_BAR_INCREMENT);
所以对于你的情况
int progress = 5;
mIncButton = (Button) findViewById(R.id.Increment);
mIncButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mProgress.incrementProgressBy(progress);
}
});
mDecButton = (Button) findViewById(R.id.Decrement);
mDecButton.setOnClickListener(new View.OnClickListener() {
@Override
mProgress.incrementProgressBy(-progress);
}
});