public class AutoCompleteLoadding extends AutoCompleteTextView {
private ProgressBar mLoadingIndicator;
public void setLoadingIndicator(ProgressBar view) {
mLoadingIndicator = view;
}
@Override
protected void performFiltering(CharSequence text, int keyCode) {
// the AutoCompleteTextview is about to start the filtering so show
// the ProgressPager
mLoadingIndicator.setVisibility(View.VISIBLE);
super.performFiltering(text, keyCode);
}
@Override
public void onFilterComplete(int count) {
// the AutoCompleteTextView has done its job and it's about to show
// the drop down so close/hide the ProgreeBar
mLoadingIndicator.setVisibility(View.INVISIBLE);
super.onFilterComplete(count);
}
}
4条答案
按热度按时间rmbxnbpk1#
我想显示AutoCompleteTextView加载指标,同时从Web服务加载数据。
在小部件的右侧放置一个外观不确定的
ProgressBar
,并像这样扩展AutoCompleTextView
类:使用
setLoadingIndicator()
方法传递对ProgressBar
的引用。这假设您正在(AutoCompleteTextView
的)适配器/适配器的过滤器中发出Web服务请求。bd1hkmkf2#
你想使用进度条而不是微调器。使用图形视图将它们放置在AutoCompleteTextView字段上并设置它们的id。我将我的设置为progressLoading。
然后在您的活动/片段中:
它是自动可见的,所以我们最初将其设置为隐藏。然后我们在AutoCompleteTextView上的addTextChangedListener上将其设置为VISIBLE。然后每当任务完成时,您将其设置回隐藏。
qojgxg4l3#
要在AutoCompleteView中添加进度条,您可以轻松执行以下操作:
首先创建一个自定义自动完成类,如下所示:
然后,将此添加到XML中
注意:使用CustomAutomComplete类的完整路径
然后,在Activity或片段中,您将获得对指示器和自动完成的引用。将进度条附加到自动完成,如下所示:
并且您可以在需要时进一步显示或移除指示符,如下所示:
和
我希望这对某人有帮助。
sqyvllje4#
在ContraintLayout中 Package 以下元素:
下面是一个例子:
它看起来是这样的: