Ali*_*aka 9 android android-progressbar
我正在尝试在代码中添加进度条并使其确定:
progressBar = new ProgressBar(getActivity());
progressBar.setLayoutParams(layoutParams);
parent.addView(progressBar, index);
progressBar.setId(id.list_item_secondary);
progressBar.setProgressDrawable(getResources().getDrawable(drawable.progress_horizontal));
progressBar.setIndeterminate(false);
progressBar.setMax(100);
Run Code Online (Sandbox Code Playgroud)
之后progressBar.setIndeterminate(false),isIndeterminate仍然是真实的,进度保持显示不确定的圆圈.
我怎样才能确定它?
从此处的ProgressBar 源代码中,您调用的构造函数位于第 237 行,它正在调用第 241 行中的构造函数,而第 241 行又调用第 245 行中的构造函数,其样式如下:
com.android.internal.R.attr.progressBarStyle
Run Code Online (Sandbox Code Playgroud)
此样式的属性 android:inminateOnly 默认设置为 true,因此您对 setInminated 的调用将被忽略。参见第433行的函数描述。
我还没有这样做,但我假设如果您像这样调用第 245 行中的构造函数:
progressBar = new ProgressBar(getActivity(), null, <Your Style ID>);
Run Code Online (Sandbox Code Playgroud)
将带有 android:inminatedOnly 的样式定义作为第三个参数传递给 false 它应该可以工作。根据源代码,我假设 setInstituteate 仅用于启用它,而不是禁用它。
希望这可以帮助...
| 归档时间: |
|
| 查看次数: |
8097 次 |
| 最近记录: |