package com.yuzhi.fine.ui; import android.app.Activity; import android.view.View; import android.view.View.OnClickListener; import android.widget.ProgressBar; import android.widget.TextView; import com.yuzhi.fine.R; import com.yuzhi.fine.http.HttpClient; public class ProgressBarHelper { public interface ProgressBarClickListener { void clickRefresh(); } public View loading; TextView tv; ProgressBar progressBar; ProgressBarClickListener pcl; public boolean isLoading = false; public Activity context; public void setProgressBarClickListener(ProgressBarClickListener pcl) { this.pcl = pcl; } public ProgressBarHelper(Activity context, View inView) { this.context = context; if (inView != null) { loading = inView; } else { if (context == null) return; loading = context.findViewById(R.id.ll_data_loading); } if (loading == null) return; tv = (TextView) loading.findViewById(R.id.loading_tip_txt); progressBar = (ProgressBar) loading.findViewById(R.id.loading_progress_bar); } public ProgressBarHelper(Activity context, View inView, String str) { this.context = context; if (inView != null) { loading = inView; } else { if (context == null) return; loading = context.findViewById(R.id.ll_data_loading); } if (loading == null) return; tv = (TextView) loading.findViewById(R.id.loading_tip_txt); // image = (ImageView) loading.findViewById(R.id.loading_image); progressBar = (ProgressBar) loading.findViewById(R.id.loading_progress_bar); // if(str.equals("GONE")){ // image.setVisibility(View.GONE); // } } public void showNetError() { context.runOnUiThread(new Runnable() { public void run() { isLoading = false; if (tv != null) { tv.setText(R.string.progress_load_error); } if (progressBar != null) progressBar.setVisibility(View.GONE); loading.setVisibility(View.VISIBLE); loading.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if (pcl != null && !progressBar.isShown() && progressBar.getVisibility() == View.GONE) { if (HttpClient.isNetworkAvailable()) { progressBar.setVisibility(View.VISIBLE); pcl.clickRefresh(); } } } }); } }); } //暂无数据 public void showNoData() { context.runOnUiThread(new Runnable() { public void run() { isLoading = false; if (tv != null) { tv.setText(R.string.progress_load_no_data); } if (progressBar != null) progressBar.setVisibility(View.GONE); loading.setVisibility(View.VISIBLE); loading.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if (pcl != null && !progressBar.isShown() && progressBar.getVisibility() == View.GONE) { if (HttpClient.isNetworkAvailable()) { progressBar.setVisibility(View.VISIBLE); pcl.clickRefresh(); } } } }); } }); } public void goneLoading() { context.runOnUiThread(new Runnable() { public void run() { isLoading = false; if (loading != null) { loading.setVisibility(View.GONE); } } }); } public void showLoading() { context.runOnUiThread(new Runnable() { public void run() { isLoading = true; if (tv != null) tv.setText(R.string.progress_loading); if (loading != null) { loading.setVisibility(View.VISIBLE); if (progressBar != null && !progressBar.isShown()) progressBar.setVisibility(View.VISIBLE); } } }); } public boolean isAllGone() { if (loading.getVisibility() == View.GONE) return true; return false; } public View getLoadingView() { return loading; } }