导航:首页 > 操作系统 > androidlistview自动加载

androidlistview自动加载

发布时间:2022-06-24 20:15:28

① 如何在android开发中动态加载的list列表数据

Android中加载list列表数据主要是通过Adapter实现,可用显示列表的控件如下:

  1. Listview

  2. GridView

  3. ExpandListview

显示具体的数据需要通过Adapter实现,Android目前有4种Adapter:

  1. ArrayAdapter

  2. SimpleAdapter

  3. SimpleCursorAdapter

  4. BaseAdapter ( 自定义Adapter)

具体操作步骤 ( 以自定义Adapter为例):

  1. 在xml中定义Listview布局

  2. 在代码中通过ID找到Listview控件

  3. 构建Adapter对象,新建一个类继承自BaseAdapter,重写它的四个方法,具体如下代码

  4. 构造好适配器后设置Listview的adapter对象为新建的适配器,界面即可显示数据

  5. 在数据变动的地方,只需要调用adapter的notifyDataSetChanged方法即可刷新界面


  6. java">packagecom.beryl.gougou;

    importandroid.content.Context;
    importandroid.view.LayoutInflater;
    importandroid.view.View;
    importandroid.view.ViewGroup;
    importandroid.widget.BaseAdapter;

    importjava.util.List;

    /**
    *Createdbyyton16/11/14.
    */

    {
    privateList<String>datalist;
    privateLayoutInflaterinflater;

    publicMyAdapter(Contextcontext,List<String>datalist){
    this.datalist=datalist;
    inflater=LayoutInflater.from(context);
    }

    @Override
    publicintgetCount(){
    returndatalist.size();
    }

    @Override
    publicObjectgetItem(intposition){
    returndatalist.get(position);
    }

    @Override
    publiclonggetItemId(intposition){
    returnposition;
    }

    @Override
    publicViewgetView(intposition,ViewconvertView,ViewGroupparent){
    //此处参考网上的view缓存机制,示例demo不多说明
    returnnull;
    }


    }

② android 开发 listview下拉加载的实现

写一个自定义ListView控件,该ListView中有正在下拉,正在刷新,和释放下拉几个状态,然后将正在刷新这个状态作为接口供外部实现回调,在外部Activity或则fragment中实现这个接口监听正在刷新这个动作,然后启用一个线程取得ListView最底部的数据id请求服务器,然后服务器查询大于id且limit 20的数据,客户端线程这边得到数据后,通知handle更新UI就行了。关于这个自定义ListView网上有很多源码。http://download.csdn.net/detail/wjw626419020/4699165

③ Android ListView 动态的加载页面

数据+adapter+listview控件

adapter随便写
这个是自定义方式的
就是说listview可以放任何你想放的东西
android内置了一些listview的格式
要在adpter里导入就行
比如 android.R.layout.simple_list_item_single_choice
很多的

这个就是那种一行一条数据
右边一个单选框的
整个listview只能单选的那种
想实现什么样的方式就再adapter里写好
然后数据通过adpter传过去
给listview就好
listview的布局在xml里写

④ android listview怎么实现上滑时一到点就自动加载

第一种是直接继承ListView,通过addHeaderView和addFooterView来实现,这个方法相对来说简单,比如QQ的好友列表就是利用这种来实现的,这种方法将在之后的第(二)节中进行讲解。
第二种方法是通过继承布局来实现,通过addView来实现,好处在于WebView、ScrollView都可以利用这种思维进行实现,没有第一种方法的局限性,实现起来相对复杂点,比如微博主界面就是利用这种方法来实现(可以通过刷新时,滑动条的位置来判断出来),第二种方法也是今天我接下来讲的内容。

针对第二种方法,布局结构图如下:

通过上图可以知道,Header和Footer在正常状态下是处于屏幕之外(通过设置padding),只有在发生下拉和上拉的时候,才会显示在屏幕可视范围中(通过scrollTo),所以可以知道,在继承LinearLayout之后,通过把Header、ListView、Footer添加到布局中,然后分别为Header、Footer实现相应的界面布局,为各部分实现相应的响应机制即可。还需要注意一点是,对于ListView还有一个是“查看更多”的Footer,这个应该要通过addFooterView实现在ListView里面。

⑤ android如何给listview添加动态加载数据

更改你所提供的数据的集合,然后刷新一下
adapter.notifyDataSetChanged();
ok了,,

⑥ android中listview的下拉刷新上拉加载是怎么实现的

这是两个分开的部分。如果你是新手,先一个一个来。
我只能跟你说一下思路,具体的东西你在网上查查,不行再问我,新手的话慢慢来。
1.
下拉刷新,获取listview的下拉时间显示header,然后调用更新数据的接口就可以了。
2.
上啦加载,是分页获取数据,获取listview的是否拉到最底,如果拉倒最底,获取数据,让后list的数据添加获取的数据,更新adapter就可以了。

⑦ android中listview加载更多

snakeBody = 1;str = "上下左右方向键控制 P键暂停...";
str1 = "现在的长度为:" + snakeBody;key = true;flag = 1;spe
ed = 700;rand = new Random();list = new ArrayList<Point>();list
Body = new ArrayList<Point>();x = 5;y = 5;
list.add(new Point(x, y));listBody.add(list.get(0));

⑧ 求android中ListView动态加载(大量)数据的详细代码啊~ 最好是一个项目~ 谢谢~

你的数据类型是什么?我这里得到的是String[][]类型的数据result 全手打 可能会有错
ListView lv=(ListView)findViewById(R.id.lv)
ArrayList<HashMap<String,Object>> list = new ArrayList<HashMap<String,Object>>();
SimpleAdapter adapter = new SimpleAdapter(context,list,R.layout.xx,new String[]{"test1","test2"},new int[]{R.id.text1,R.id.text2});
for(int i=0;i<result.length;i++){HashMap<String,Object> map = new HashMap<String,Object>();
map.put("test1",result[ i ][0]);
map.put("test2",result[ i ][1]);
list.add(map);}
lv.setAdapter(adapter);

⑨ android listview为什么会自动刷新

使用handler+线程动态刷新界面的一般顺序是这样的:
线程:更新数据,handler:刷新界面
启用一个新的线程去获取远程服务器的数据,然后通知handler去跟新ListView
我没有看到你在handler里面做了什么更新ListView的操作,你在里面加载数据是不正确的,加载数据应当放在Thread里面,你的代码存在很多问题,特别是这句:handler.post(runnable);你通过延迟时间来等待数据的加载完成,这是很不科学的。
可以参考成这样:


Handler handler = new Handler() {
public void handleMessage (Message msg) {//此方法在ui线程运行
switch(msg.what) {
case MSG_SUCCESS:
list.setAdapter(simpleAdapter);
break;

case MSG_FAILURE:

break;
}
}
};


在Thread裏面更新数据:


Runnable runnable = new Runnable() {

@Override
public void run() {//run()在新的线程中运行
final String urlPath = "http://market.huobi.com/staticmarket/ticker_btc_json.js";
String jsonString = getJsonContent.getJsonContent(urlPath);
//解析string类型的json数据并返回类型为item的一个对象中
item item = JsonTools.getItem(jsonString);
if(item!=null){
listItem.put("high",items.getHigh());
istItem.put("low",items.getLow());
listItem.put("last",items.getLast());
listItem.put("buy",items.getBuy());
listItem.put("sell",items.getSell());
listItems.add(listItem);
}

//将item对象返回到handler当中
handler.obtainMessage(MSG_SUCCESS,item).sendToTarget();

}
};


在onCerat中SimpleAdapter simpleAdapter = new SimpleAdapter(this, listItems,
R.layout.item,
new String[] { "high", "low", "last","buy","sell" },
new int[] { R.id.high, R.id.low, R.id.last,R.id.buy,R.id.sell });
ListView list = (ListView) findViewById(R.id.listView1);


具体细节你可以在调整调整。

⑩ android listview怎么自动刷新

0、本质上是listview绑定Adapter,Adapter关联List,因此List变化后导致Adapter同步变化;再通过调用adapter.notifyDataSetChanged();方法使得listview界面自动更新。
操作:
1、List<String> strName = new ArrayList<String>();//实际的数据源
2、Adapter adapter = new ArrayAdapter<String>(context,
R.layout.xmlforitem, strName);//适配器,其中 R.layout.xmlforitem是列表中每一项的布局,可以用默认的也可自建,strName则是将数据源绑定到适配器
3、listView.setAdapter(adapter);//将适配器绑定到列表显示控件ListView;
4、strName.add("TEST ONE");//增加一项,引起list变化,Adapter也随之变化;
5、adapter.notifyDataSetChanged();//调用notifyDataSetChanged();更新适配器,ListView会自动刷新,notifyDataSetChanged()方法可能需要在UI线程中调用,建议自行测试;

6、数据增加可能引起内存变化,需防内存溢出;
7、其他。

阅读全文

与androidlistview自动加载相关的资料

热点内容
怎么降为安卓10 浏览:994
javaweb程序设计郭 浏览:247
gm声望命令 浏览:484
pdf转换器电脑版免费 浏览:41
解压歌曲什么歌最好 浏览:151
诺贝尔pdf 浏览:967
云服务器快速安装系统原理 浏览:788
苹果腾讯管家如何恢复加密相册 浏览:115
手机软件反编译教程 浏览:858
sqlserver编程语言 浏览:650
gpa国际标准算法 浏览:238
服务器编程语言排行 浏览:947
怎么下载快跑app 浏览:966
小红书app如何保存视频 浏览:172
如何解开系统加密文件 浏览:811
linux切换root命令 浏览:283
c编译之后界面一闪而过怎么办 浏览:881
怎么看ic卡是否加密 浏览:726
lgplc编程讲座 浏览:810
cnc手动编程铣圆 浏览:724