我有问题,Fragment有内容,我想在Firebase加载内容时添加简单的ProgressBar。我怎么能这样做呢? (我尝试添加onDataChange,但它不起作用,代码如下)
public void onDataChange(DataSnapshot dataSnapshot) {
progressBar.setVisibility(View.VISIBLE);
mContentLayout.setVisibility(LinearLayout.GONE);
for (final DataSnapshot snapshot : dataSnapshot.getChildren()) {
item = snapshot.getValue(Item.class);
if(item.isSales()) {
arrayOfItemProduct.add(item);
}
}
adapter.notifyDataSetChanged();
progressBar.setVisibility(View.GONE);
mContentLayout.setVisibility(LinearLayout.VISIBLE);
}
答案 0 :(得分:0)
要解决此问题,您可以在片段的.XML布局文件中添加以下代码行:
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/progress_bar"
android:layout_centerInParent="true"
style="@style/Widget.AppCompat.ProgressBar"/>
这意味着每次启动您的片段时,ProgressBar
都会显示。
将progressBar
变量定义为全局变量,然后在onCreateView()
方法中的fragmnet中找到它,如下所示:
progressBar = yourFragmentView.findViewById(R.id.progress_bar);
然后在onDataChange()
方法中使用以下代码:
if (progressBar != null) {
progressBar.setVisibility(View.GONE);
}