首页 > 其他分享 >分别设置listview加载中、空数据、加载数据失败三种状态的显示

分别设置listview加载中、空数据、加载数据失败三种状态的显示

时间:2023-04-06 21:33:31浏览次数:50  
标签:void list 加载 View import android listview 数据 view


设置listview加载中,空数据,加载数据失败三种状态的显示.



分别设置listview加载中、空数据、加载数据失败三种状态的显示_ide



分别设置listview加载中、空数据、加载数据失败三种状态的显示_ide_02



分别设置listview加载中、空数据、加载数据失败三种状态的显示_android_03



基本用法:

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);
	}
}


标签:void,list,加载,View,import,android,listview,数据,view
From: https://blog.51cto.com/u_5454003/6174176

相关文章

  • 在ListView上滑动显示Delete按钮
    SwipeLayout实现listview滑动删除功能http://www.devstore.cn/code/info/579.html首先设置listView.setOnTouchListener(onTouchListener);listView=(ListView)findViewById(R.id.listView);listView.setOnItemClickListener(onItemClickListener);li......
  • 懒加载的Scrollview
    要实现一个功能:当Scrollview滑动到最底端的时候需要触发事件加载其他数据。很多人都以为ScrollView可以像ListViev那样setOnScrollListener,其实沒那么简单,因为ScrollView压根就没有该接口,在baidu上兜了一圈没有找到合适的答案,没办法只能google去了,居然一下子......
  • ListView之setEmptyView的问题
    使用listView或者gridView时,当列表为空时,有时需要显示一个特殊的emptyview来提示用户,一般情况下,如果你是继承ListActivity,只要<ListViewandroid:id="@id/android:list".../><TextViewandroid:id="@id/android:empty.../>当列表为空时就会自动显示Tex......
  • 使用DbContext.Set<TEntity>()方法也可以对数据库实体进行CRUD操作
    我们可以用DbContext.Set<TEntity>()方法获取到一个DbSet<TEntity>对象,从而对泛型TEntity类所代表的数据库表进行CRUD操作。例如我们现在有数据库表和TEntity类Person,那么下面两种写法是完全等价的:dbContext.Persons.Take(10).ToList();//dbContext.Persons等于dbContext.Set<P......
  • 使用Kettle定时从数据库A刷新数据到数据库B
    一、需求背景由于项目场景原因,需要将A库(MySQL)中的表a、表b、表c中的数据定时T+1增量的同步到B库(MySQL)。这里说明一下,不是数据库的主从备份,就是普通的数据同步。经过技术调研,发现Kettle挺合适的,原因如下:Kettle(数据抽取、清洗、转换、装载)是由java编写,可以在Window、Lin......
  • 第19届高级数据挖掘与应用国际会议(ADMA'23)
      欢迎参加第19届高级数据挖掘与应用国际会议(ADMA'23),8月21-23日,中国沈阳。主页:http://ADMA2023.UQCloud.Net 我们很高兴举办第19届高级数据挖掘与应用国际会议(ADMA'23)。2023年是先进数据挖掘与应用国际会议(ADMA'23)举办19周年,该会议将于2023年8月21日至23日在中国......
  • redis基础数据结构详解
    一.redis为什么快基于内存的存储虽然是单线程,但是采取了多路复用,可以高效的处理网络并发良好的数据结构设计二.redis基础数据结构redis有五种基础的数据结构string,list,set,zset,hashredis所有的数据结构的key都是string类型,我们所说的数据结构都是指value的数据结构......
  • 大数据经典论文解读 - Metastore
    MetastoreMegastore:Providingscalable,highlyavailablestorageforinteractiveservices在Bigtable上支持SQL,实现分布式数据库:跨数据中心的多副本同步数据复制支持为多数据表的字段建立Schema,且通过SQL接口访问支持数据库的二级索引支持数据库的事务Megastore是......
  • 迅达扶梯软件 FCOM4 5 6对迅达扶梯进行调试,监控,数据读取
    迅达扶梯软件FCOM4 5 6对迅达扶梯进行调试,监控,数据读取YID:3199667155554379......
  • 大数据公司如何结合AI技术
    大数据和人工智能(AI)是当今最热门的技术领域,它们之间有着密切的联系和互动。利用AI技术,大数据公司可以对海量数据进行快速处理、分析、挖掘和应用,从而提升数据价值和商业竞争力。那么,大数据公司是如何使用AI技术的呢?本文将从以下四个方面进行介绍:一、数据采集和清洗要进行大数据分析......