我正在尝试使用自定义进度条,但即使我将其设置为false,它仍处于不确定模式,并且进度条是正方形。当我提供layoutparams的宽度和高度时,条形的宽度与我设置的宽度不匹配,而是与高度匹配,使得进度条为正方形。
以下是代码:
ProgressBar pbRightExtruder = new ProgressBar(this);
LinearLayout.LayoutParams lpProgressBar = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
lpProgressBar.weight = 1;
pbRightExtruder.setLayoutParams(lpProgressBar);
pbRightExtruder.setProgress(50);
pbRightExtruder.setIndeterminate(false);
pbRightExtruder.setIndeterminateDrawable(getResources().getDrawable(R.drawable.progressbar));
pbRightExtruder.setProgressDrawable(getResources().getDrawable(R.drawable.progressbar));
layoutRightExtruder.addView(pbRightExtruder);
我错过了什么?
答案 0 :(得分:0)
如果您使用weight
,请将width
设置为0而不是LinearLayout.LayoutParams.MATCH_PARENT
。然后weight
将正常工作。对于indeterminate
问题,请参阅this。