//HttpUtils实例化对象
     HttpUtils http = new HttpUtils();
       /*
                *发送请求send(HttpMethod method, String url, RequestCallBack<T> callBack)
             * method请求方式
              * url请求地址
              *RequestCallBack <String>请求完后的回调监听String是请求完后你想让他返回什么类型的
             */
           http.send(HttpRequest.HttpMethod.GET, urlPath,new RequestCallBack<String>() {
                       @Override
                       public void onLoading(long total, long current, boolean isUploading) {
                         }
                       @Override
                        public void onSuccess(ResponseInfo<String> responseInfo) {
                          String s = responseInfo.result;
                          //    System.out.println(s);
                              try {
                                //判断,如果有数据先清空
                                if (STATE_3 == STATE_1) {
                                    news .clear();
                                }
                                News newss=null;
                                XmlPullParser parser=Xml.newPullParser();
                                ByteArrayInputStream byteArrayInputStream=new ByteArrayInputStream(s.getBytes());
                                parser.setInput(byteArrayInputStream, "utf-8");
                                int eventType=parser.getEventType();
                                while (eventType!=XmlPullParser.END_DOCUMENT) {
                                    String name=parser.getName();
                                    switch (eventType) {
                                    case XmlPullParser.START_TAG:
                                        if (name.equals("news")) {
                                            newss=new News();
                                        }else if (name.equals("title")) {
                                            String title=parser.nextText();
                                            newss.setTitle(title);
                                        }
                                        else if (name.equals("body")) {
                                            String body=parser.nextText();
                                            newss.setBody(body);
                                        }
                                        else if (name.equals("commentCount")) {
                                            String commentCount=parser.nextText();
                                            newss.setCommentCount(commentCount);
                                        }
                                        else if (name.equals("author")) {
                                            String author=parser.nextText();
                                            newss.setAuthor(author);
                                        }else if (name.equals("pubDate")) {
                                            String pubDate=parser.nextText();
                                            newss.setPubDate(pubDate);
                                            
                                        }
                                        break;
                                    case XmlPullParser.END_TAG:
                                        
                                        if (name.equals("news")) {
                                            news.add(newss);
                                            
                                            //更新适配器
                                            if (adapter == null) {
                                               adapter = new MyAdapter(news,getActivity());
                                               lv.setAdapter(adapter);
                                              } else {
                                                adapter .notifyDataSetChanged();
                                                     }
                                                load();
                                        }
                                        break;

default:
                                        break;
                                    }
                                    eventType=parser.next();                
                                }
                            } catch (XmlPullParserException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                            } catch (IOException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                            }
                        }
                 @Override
                        public void onStart() {
                     }
                       @Override
                       public void onFailure(HttpException error, String msg) {
                         }
                     });

XUtils的更多相关文章

  1. xUtils 3.0 post使用详解

    github:https://github.com/wyouflf/xUtils3 xUtils3简介 xUtils 包含了很多实用的android工具. xUtils 支持超大文件(超过2G)上传, ...

  2. Android开发之XUtils框架使用和报错处理

    一.XUtils  lib的的添加: 1.点击+,选择第一个Library dependency 2.输入XUtils 按enter键,搜索: 3.然后就是选择XUtils,选择哪个版本就看个人了,接 ...

  3. XUtils框架之初步探索

    Xutils分为四大模块. BitmapUtils  DBUtils ViewUtils HttpUtils

  4. android 断点下载---XUtils

    配置权限 <uses-permission android:name="android.permission.INTERNET"/> <uses-permissi ...

  5. XUtils 3 使用

    源代码:https://github.com/wyouflf/xUtils 基本使用:http://blog.csdn.net/abc6368765/article/details/50699334 ...

  6. 8.2 辅助 xUtils 3.0

    主要有四大模块: DbUtils模块: android中的orm(对象关系映射)框架,一行代码就可以进行增删改查: 支持事务,默认关闭: 可通过注解自定义表名,列名,外键,唯一性约束,NOT NULL ...

  7. xUtils 1.8.4 (Android工具库) 发布 - http模块优化

    感谢关注xUitls的网友最近一段时间给予的热心反馈,xUtils近期做了很多细节优化,同时修复和优化了大家反馈的一些问题.重要的变化有http请求返回更全面的结果信息:下载设置断点续下时,如果服务器 ...

  8. Android Http请求框架二:xUtils 框架网络请求

    一:对Http不了解的请看 Android Http请求框架一:Get 和 Post 请求 二.正文 1.xUtils 下载地址 github 下载地址  : https://github.com/w ...

  9. Android 手机卫士--xutils说明与下载方法使用

    xUtils简介 xUtils 包含了很多实用的android工具. xUtils 最初源于Afinal框架,进行了大量重构,使得xUtils支持大文件上传,更全面的http请求协议支持(10种谓词) ...

  10. xutils 3.0 post 使用

    github:https://github.com/wyouflf/xUtils3 xUtils3简介 xUtils 包含了很多实用的android工具. xUtils 支持超大文件(超过2G)上传, ...

随机推荐

  1. 永久修改 CMD 的 PROMPT 显示结果/给cmd命令显示加上运行时间

    1.环境 windows10 系统 2.打开 cmd ,快捷键 Ctrl + x 然后a 3.输入 REG ADD "HKLM\SYSTEM\CurrentControlSet\Contro ...

  2. Foundation框架—字符串(NSString)

    一 NSString不可变字符串 1.字符串的创建 //创建字符串常量 NSString *string1 = @"hello"; string1 = @"hello w ...

  3. FireDac 的RecordCount 相关测试 记录。

    unit Unit4; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System ...

  4. python开发 Day1 python基础

    编程语言主要从以下几个角度为进行分类,编译型和解释型.静态语言和动态语言.强类型定义语言和弱类型定义语言,每个分类代表什么意思呢,我们一起来看一下. 编译和解释的区别是什么? 编译器是把源程序的每一条 ...

  5. 10.openssl x509

    主要用于输出证书信息.也能够用于签名.自签名.转换证书格式.还原证书为证书请求等.该命令非常强大,几乎实现了伪命令req,ca,verify,crl的所有功能,最牛的一点是该命令不需要通过配置文件就能 ...

  6. 并发编程中.net与java的一些对比

    Java在并发编程中进行使用java.util.concurrent.atomic来处理一些轻量级变量 如AtomicInteger AtomicBoolean等 .Net中则使用Interlocke ...

  7. SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句

    附:(创建“商品管理数据库”的SQL语句) --建立"商品管理数据库"数据库-- create database 商品管理数据库 on(name='商品管理数据库_m', file ...

  8. 线程操作UI界面的方法

    以前一般都是用BeginInvoke来刷新UI界面,现在采用 SynchronizationContext 来刷新,写起来清楚多了. SynchronizationContext synchroniz ...

  9. 【转】MessageBox的常见用法

    网址:http://www.douban.com/note/40199603/ 一 函数原型及参数 function MessageBox(hWnd: HWND; Text, Caption: PCh ...

  10. Android_SQLite版本升级,降级 管理

    今天我们主要学习了数据库版本升级对软件的管理操作. 我们手机经常会收到xxx软件升级什么的提醒,你的软件版本更新,同时你的数据库对应的版本也要相应的更新. 数据库版本更新需要主要的问题: 软件的1.0 ...