package skytv_com.banking.enjoymovie; import android.os.Bundle; import android.text.TextUtils; import android.view.Gravity; import android.view.View; import android.widget.FrameLayout; import android.widget.LinearLayout; import android.widget.ListView; import android.widget.ProgressBar; import android.widget.TextView; import com.banking.xc.utils.Log; import com.banking.xc.utils.MyActivity; import skytv_com.banking.enjoymovie.R; public abstract class MyListActivity extends MyActivity{ private ProgressBar mLoadingProgressbar; private FrameLayout mLoadingErrorLayout; //private ListView mListView; private LinearLayout nodataLayout; private String noDataHint = ""; @Override protected void onCreate(Bundle savedInstanceState) { if (Log.D) { Log.d("MyListActivity", "onCreate() -->> " + getClass().getName()); } super.onCreate(savedInstanceState); } public abstract ProgressBar setLoadingBar(); public abstract FrameLayout setLoadingError(); public abstract LinearLayout setNodataLayout(); public void setNoDataHint(String hint){ this.noDataHint = hint; } public void showLoadingLayout(){ if(mLoadingProgressbar==null){ mLoadingProgressbar = setLoadingBar(); } attemptRunOnUiThread(new Runnable() { @Override public void run() { mLoadingProgressbar.setVisibility(View.VISIBLE); } }); } public void hindLoadingLayout(){ if(mLoadingProgressbar==null){ mLoadingProgressbar = setLoadingBar(); if(mLoadingProgressbar==null){ mLoadingProgressbar = (ProgressBar) this.findViewById(R.id.list_loading_bar); } } attemptRunOnUiThread(new Runnable() { @Override public void run() { mLoadingProgressbar.setVisibility(View.GONE); } }); } /** * 处理列表类中遇到网络错误,解析错误等 */ public void showErrorLayout(){ if(mLoadingErrorLayout==null){ mLoadingErrorLayout = setLoadingError(); if(mLoadingErrorLayout==null){ mLoadingErrorLayout = (FrameLayout) this.findViewById(R.id.loading_error_tips_layout); } } attemptRunOnUiThread(new Runnable() { @Override public void run() { mLoadingErrorLayout.setVisibility(View.VISIBLE); //触摸事件处理 } }); } /** * 处理列表中遇到没有数据返回情况 */ public void showNodataLayout(){ if(nodataLayout == null){ nodataLayout = setNodataLayout(); if(nodataLayout == null){ nodataLayout = (LinearLayout)this.findViewById(R.id.loading_nodata_tips_layout); } } attemptRunOnUiThread(new Runnable() { @Override public void run() { if(!TextUtils.isEmpty(noDataHint)){ final TextView nodataTv = (TextView)(nodataLayout.findViewById(R.id.no_data_hint)); nodataTv.setText(noDataHint); } nodataLayout.setVisibility(View.VISIBLE); //触摸事件处理 } }); /*if(mListView==null){ mListView = setListView(); } final TextView textView = new TextView(this); textView.setGravity(Gravity.CENTER); String text; if (!TextUtils.isEmpty(this.noDataHint)){ text = noDataHint; } else { text = getString(R.string.no_data); } textView.setText("dddd"); textView.setTextSize(17); textView.setPadding(0, 20, 0, 20); final String text2 = text; attemptRunOnUiThread(new Runnable() { @Override public void run() { mListView.addHeaderView(textView, "", false); } });*/ } /** * 可以重写 */ public void refreshList(){ } }