参见英文答案 >
How do I use Android ProgressBar in determinate mode?2个
我正在尝试在代码中添加进度条并使其确定:
我正在尝试在代码中添加进度条并使其确定:
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);
在progressBar.setIndeminminate(false)之后,isIndeterminate仍然为true,进度保持显示不确定的圆.
我怎样才能确定它?
解决方法
从ProgressBar源代码
here,您调用的构造函数在第237行,它在第241行调用构造函数,而第241行又使用样式调用第245行中的构造函数:
com.android.internal.R.attr.progressBarStyle
此样式默认情况下将android:indeterminateOnly属性设置为true,因此将忽略对setIndeterminate的调用.请参阅第433行的功能说明.
progressBar = new ProgressBar(getActivity(),null,<Your Style ID>);
作为第三个参数传递一个样式定义与android:indeterminateOnly为false它应该工作.基于源代码,我假设setIndeterminate仅用于启用它而不是禁用它.
希望这可以帮助…
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。