设置listview加载中,空数据,加载数据失败三种状态的显示.
基本用法:
基本用法:
import java.util.ArrayList; import java.util.Arrays; import com.kanak.emptylayout.EmptyLayout; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.ArrayAdapter; import android.widget.Toast; import android.app.ListActivity; public class MainActivity extends ListActivity { private EmptyLayout mEmptyLayout; // this is required to show different layouts (loading or empty or error) private ArrayAdapter<String> mAdapter; private View.OnClickListener mErrorClickListener = new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this, "Try again button clicked", Toast.LENGTH_LONG).show(); } }; // the list items static final String[] MOVIES = new String[] { "Forrest Gump", "Toy Story", "Saving Private Ryan", "Toy Story 2", "The Green Mile", "Cast Away", "Road to Perdition", "Catch Me If You Can", "The Terminal", "The Polar Express", "The Da Vinci Code", "Angels & Demons", "Toy Story 3", "Extremely Loud & Incredibly Close", "Cloud Atlas", "Captain Phillips", "Toy Story 4", "The Lost Symbol" }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // initialize the empty view mEmptyLayout = new EmptyLayout(this, getListView()); mEmptyLayout.setErrorButtonClickListener(mErrorClickListener); // populate the list view populateList(); } // Triggered when "Empty" button is clicked public void onShowEmpty(View view) { // clear the list and show the empty layout mAdapter.clear(); mEmptyLayout.showEmpty(); } // Triggered when "Loading" button is clicked public void onShowLoading(View view) { // clear the list and show the loading layout mAdapter.clear(); mEmptyLayout.showLoading(); } // Triggered when "Error" button is clicked public void onShowError(View view) { // clear the list and show the error layout mAdapter.clear(); mEmptyLayout.showError(); } // Triggered when "List" button is clicked public void onShowList(View view) { // show the list populateList(); } private void populateList() { ArrayList<String> list = new ArrayList<String>(); list.addAll(Arrays.asList(MOVIES)); mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list); setListAdapter(mAdapter); } }