我还是在玩几把游戏还是回家睡觉sss了

& ListView分页加载数据
ListView分页加载数据
对于ListView分页加载数据,是正常情况下是非常有必要。一般对于少量的数据一次性把全部数据加载到ListView中显示,对于数据量多比较大,特别在资源有限的手机设备中更有重要,由用户去点击加载想要数据更为合适。在一些博客上看到关于ListView分页加载,但不太全面,实用性不高,因此我模拟正常情况下ListView分页加载,对于有方面帮助的朋友肯定有用,由于本人技术有限,可能存在些问题,欢迎指正,谢谢!
先看效果吧,
2. java代码:MainActivity.java
* ListView分页加载数据
* @author zhangkai281
public class MainActivity extends Activity {
private ListView listV
private List&Map&String,Object&&
private listViewA
//分页加载的数据的数量
private int pageSize=10;
private final int pageType=1;
//查看更多
private TextView moreTextV
//正在加载进度条
private LinearLayout loadProgressB
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list_page);
listView=(ListView)findViewById(R.id.lv_id);
//第一个参数:1起始数
第二个参数:显示的数目
data=InitValue.initValue(1,15);
//在ListView中添加"加载更多"
addPageMore();
//添加"加载更多"一定要在设置Adapter之前
adapter=new listViewAdapter();
listView.setAdapter(adapter);
private class listViewAdapter extends BaseAdapter{
int count=data.size();
public int getCount() {
public Object getItem(int position) {
public long getItemId(int position) {
public View getView(int position, View convertView, ViewGroup parent) {
View view=LayoutInflater.from(MainActivity.this).inflate(R.layout.list_page_item, null);
TextView title=(TextView)view.findViewById(R.id.tv_id);
TextView text=(TextView)view.findViewById(R.id.title_id);
title.setText(data.get(position).get("title").toString());
text.setText(data.get(position).get("text").toString());
* 加载下一页的数据
* @param pageStart
* @param pageSize
private void chageListView(int pageStart,int pageSize){
List&Map&String,Object&& data=InitValue.initValue(pageStart,pageSize);
for (Map&String, Object& map : data) {
this.data.add(map);
* 在ListView中添加"加载更多"
private void addPageMore(){
View view=LayoutInflater.from(this).inflate(R.layout.list_page_load, null);
moreTextView=(TextView)view.findViewById(R.id.more_id);
loadProgressBar=(LinearLayout)view.findViewById(R.id.load_id);
moreTextView.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
//隐藏"加载更多"
moreTextView.setVisibility(View.GONE);
//显示进度条
loadProgressBar.setVisibility(View.VISIBLE);
new Thread(new Runnable() {
public void run() {
//休眠3秒,用于模拟网络操作时间
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
//加载模拟数据:下一页数据, 在正常情况下,上面的休眠是不需要,直接使用下面这句代码加载相关数据
chageListView(data.size(),pageSize);
Message mes=handler.obtainMessage(pageType);
handler.sendMessage(mes);
}).start();
listView.addFooterView(view);
private Handler handler=new Handler(){
public void handleMessage(Message msg) {
switch (msg.what) {
case pageType:
//改变适配器的数目
adapter.count += pageS
//通知适配器,发现改变操作
adapter.notifyDataSetChanged();
//再次显示"加载更多"
moreTextView.setVisibility(View.VISIBLE);
//再次隐藏“进度条”
loadProgressBar.setVisibility(View.GONE);
super.handleMessage(msg);
模拟数据,通常是通过网络取得服务器的数据,显示出来,得向服务传递参数包括分页相关,当时启起行数,每页显示多行数据。也可以加载本地的SQLite库中的数据。加载网络的比较比吧,以下只是模拟数据:
public class InitValue {
public static int page=1;
* 模拟数据分页加载,
* @param pageStart
* @param pageSize
每页显示数目
public static List&Map&String,Object&& initValue(int pageStart,int pageSize){
Map&String,Object&
List&Map&String,Object&& list=new ArrayList&Map&String,Object&&();
for(int i=0;i&pageSi++){
map=new HashMap&String,Object&();
map.put("text", "zhangkai281发表文章");
map.put("title", page+"_ListView分页显示");
list.add(map);
4. 布局文件:main.xml:
&?xml version="1.0" encoding="utf-8"?&
&ScrollView android:layout_width="fill_parent" xmlns:android="/apk/res/android"
android:layout_height="wrap_content" android:scrollbars="vertical"&
&LinearLayout
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent"&
&TextView android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/app_name" /&
&ViewFlipper android:id="@+id/vf_id" android:layout_width="fill_parent"
android:layout_height="wrap_content" /&
&/LinearLayout&
&/ScrollView&
5. 布局文件:list_page.xml:
&?xml version="1.0" encoding="utf-8"?&
&LinearLayout xmlns:android="/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent"&
&ListView android:id="@+id/lv_id" android:layout_width="fill_parent"
android:layout_height="wrap_content"/&
&/LinearLayout&
6. 布局文件:list_page_load.xml
&?xml version="1.0" encoding="utf-8"?&
&LinearLayout xmlns:android="/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:orientation="vertical" android:gravity="center_horizontal"
android:paddingTop="13dp" android:paddingBottom="13dp"&
&TextView android:id="@+id/more_id" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="查看更多..."
android:textSize="25dp" android:gravity="center_horizontal"/&
&LinearLayout android:id="@+id/load_id" android:orientation="horizontal"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:visibility="gone"&
&ProgressBar android:layout_width="match_parent" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" /&
&TextView android:layout_width="wrap_content" android:layout_height="fill_parent"
android:gravity="center_vertical" android:layout_marginLeft="10dp"
android:text="正在加载..." android:textSize="20dp"/&
&/LinearLayout&
&/LinearLayout&
7. 还有此小xml加有列出,比较简单,此处省略,
希望此文章对朋友有所帮助,谢谢!
本文固定链接:
[上一篇][下一篇]
最新文章随机精彩热门排行
日志总数:3902 篇
评论总数:11871 评
标签数量:4473 个
链接总数:4 条
建站日期:
运行天数:1189 天& 2009- DV生活百科|DV知识问答 版权所有
本站提供的信息资源均搜自网络、与本站无关
版权归原作者所有最近热门:
台湾渔民愤怒了!后果相当严重大美女和武器,让你无法抉择!日本网友:真希望日本有机会和中国干一仗火箭军亮剑!南部战区东风16导弹罕见曝光这张笑容刷爆朋友圈 被调侃来自非洲中国最美女人排行:第一名你不服不行
南海仲裁“伪法庭”做出的非法判决不过是废纸一张,这已经成为不争的事实。随着事态的
12日,位于荷兰海牙的南海仲裁案临时仲裁庭公布裁决结果,“中国在九段线内无历史权利
新闻排行榜
跟他们交往的人数更是少之又少,到底跟非洲人发生一夜情的话,会有什么样的后果呢?
由美国、日本和菲律宾共同制片、编剧、导演和出演的南海“非法仲裁闹剧大片”刚刚出炉...
“仲裁”之后,南海局势风雨欲来,然而,在解放军海军海军大演习和空军轰炸机编队在南....
盘点中国在此案对应策略的的得失功过,为今后中美南海的继续博弈打好基础。菲律宾2013...
针对中韩萨德冲突,朴槿惠态度突然变硬,不惜与中国对立,取消计划中的中韩首脑会谈...
英国新首相上任了,一位女首相,被称作“新铁娘子”,59岁,保守党内的主流,党内....
大公网7月16日北京讯(记者葛冲)所谓南海仲裁案最终裁决否定中国南沙群岛岛礁的....
&| &| &| &|
为什么双方都把战役规模看得那么小?因为上甘岭虽然战略位置非常重要,但是地型特别狭...
1959年的10月1日,是中华人民共和国成立十周年纪念日。为迎接新中国成立后的第一....
抗日战争中,任胶东军区司令员的许世友,面对鬼子的“武士刀”也毫无惧色。一次,许世...
&| &| &| &| &| &| &|
黄心颖网易娱乐7月18日报道(图文/东星)7月17日,TVB电视城制作直播节目《万千星辉放...
下面这些谜团,自发现起就在全世界内引发轩然大波,关于它们的答案,直到今天,号称“
女子在野外散步时突然听到了狗叫声,那声音特别虚弱,更像是在呻吟。于是她寻着声音开...
&| &| &| &| &| &| &| &| &|
2008年4月,赵本山接受某媒体采访时说:“我在东北任何饭店吃饭都有人给我......
中国一向倡导使用和平对话来解决国际争端,但往往有时,对方会频频挑战我方底线。最终我方不....
5月30日《汉和防务评论》报道称,中国空军已正式立项研制隐形战略轰炸机,并表示军工部门....
22日至23日,海军南海舰队远海训练编队在西太平洋某海域进行了连续48小时不间断的实兵对抗演练....
| | | | | | | | | | | | | | | | | | | | | | | | | | |
本站所有内容未经许可不得复制与转载,否则追究法律责任。建议使用IE 7.0以上版本或使用Firefox 3.0以上版本浏览器浏览本网站可获得最佳效果- 或用以下帐号直接登录 -
守护车票公平不能让铁路“孤军奋战”
来源:南方网作者:谢晓刚
又是一年春运时,守护车票公平,有赖于铁路部门加快优化相关环节的步伐,更有赖于全社会的换位思考,集纵思、重落实,以点变达量变,春运难题、春运瓶颈或许就能得到“质”的解决。
  旅客罗某乘高铁出站时发现丢了车票,虽然出示手机订票信息,仍被要求补交票款。围绕“手机短信能不能作为有效客票”,原告向南京铁路运输法院提起诉讼。14日下午,法院经审理作出一审判决,驳回原告罗某的诉讼请求。
  尽管有人质疑,消费者的实名购票信息在铁路售票系统中完全可以核查,铁路运输部门要求消费者必须另行购票的行为侵害了消费者的合法权益。然而,在这一事件中,如果仅将注意力集中在要求无票旅客重新购票上,则可能忽略了更重要的问题。
  从最早唯一的窗口售票,到有了社会车票代售点、电话订票、网络订票,再到如今的火车票实名制,铁路部门可以说已经是竭尽了全力,在改善运输条件及能力方面投入巨大。无论是多渠道的购票方式,还是备受民众诟病的12306验证升级,可见铁路部门是在乎民意的,在不断采取有效阻断黄牛党猖獗行为的同时,更好地保障百姓获得票源的公平性,这点无庸置疑。
  试想一下,在实名制购票环境下,旅客如果没有取车票,而是凭购票信息乘车,只要工作人员核对身份证与短信内容及库存信息便可实现车票的核对;一旦旅客将车票取出,就已经对数据库中的车票进行了消除,如果再凭购票信息来乘车,就存在着极大的漏洞,因为旅客可以凭购票短信乘车,同时另一个人可以凭借车票实物进站乘车,目前国内各火车站已逐步实现凭车票自动过检票闸机进站乘车。
  由此可见,手机短信和车票实物都是旅客乘车凭证,只是为了确保旅客车票的有效性及乘车的公平性,乘车凭证必须是唯一性。正如铁路部门所言,在当前实际情况和目前技术条件,无法对每张车票的使用情况进行跟踪,也无法判明丢失的车票是否已被使用。铁路部门已通过12306网站告知相关注意事项,起到告知义务。
  事实上,因其安全、便捷、经济的属性,铁路已经成为咱中国老百姓探亲访友、回家团聚的首选交通工具。但我们别忘了,交通运输市场除了铁路,还有公路、空路、水路等多种交通工具,特别是每年春运,仅占旅客运输市场份额还不到10%的铁路,独木难支回家之路。
  又是一年春运时,守护车票公平,如何让铁路部门告别“孤军奋战”,如何让火车票不至于成为少数人的“坐地发财”,有赖于铁路部门加快优化相关环节的步伐,更有赖于全社会的换位思考,集纵思、重落实,以点变达量变,春运难题、春运瓶颈或许就能得到“质”的解决。
欢迎关注"南方新闻网"公众号(微信上长按二维码识别 )
欢迎关注"木棉花香"公众号(微信上长按二维码识别 )
编辑:一格
请文明发言,还可以输入140字
您的评论已经发表成功,请等候审核
小提示:您要为您发表的言论后果负责,请各位遵守法纪注意语言文明
新闻关键词
为进一步推动广东省大学生深入学习《习近平总书记系列重要讲话读本》(2016年版),增强中国特色社会主义的道路自信、理论自信、制度自信,为实现中华民族伟大复兴的"中国梦"贡献智慧和力量,广东省委宣传部、南方网决定在全省普通高等学校大学生中开展"党中央治国理政新理念新思想新战略知识竞赛"活动。

我要回帖

更多关于 玩游戏 睡觉 心理 的文章

 

随机推荐