ListView获取网路链接展示接口信息

2024-03-06 03:20

本文主要是介绍ListView获取网路链接展示接口信息,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

例:




HttpURLConnection网络请求,
ImageLoader获取图片

在Module的build.gradle文件中添加依赖和属性配置(记得还有第三方共享的jar包要导):

dependencies {
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
compile 'com.google.code.gson:gson:2.2.4'
}


MainActivity类:
public class MainActivity extends AppCompatActivity {private ListView lv;private Handler myHandler=new Handler(){public void handleMessage(android.os.Message msg) {List<News.NewslistBean> lists= (List<News.NewslistBean>) msg.obj;MyAdapter myAdapter = new MyAdapter(MainActivity.this, lists);lv.setAdapter(myAdapter);};};@Override
    protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);lv = (ListView) findViewById(R.id.lv);new Thread(){public void run(){try {URL url=new URL("https://api.tianapi.com/wxnew/?key=8d6e3228d25298f13af4fc40ce6c9679&num=10&page=1");HttpURLConnection connection = (HttpURLConnection) url.openConnection();connection.setRequestMethod("GET");connection.setReadTimeout(5000);connection.setConnectTimeout(5000);int code=connection.getResponseCode();if(code==200){//5
                        InputStream inputStream = connection.getInputStream();String content=streamToString(inputStream);Gson gson=new Gson();News news = gson.fromJson(content, News.class);List<News.NewslistBean> newslist = news.getNewslist();Message msg=Message.obtain();msg.obj=newslist;myHandler.sendMessage(msg);}} catch (Exception e) {e.printStackTrace();}}}.start();}public String streamToString(InputStream is){StringBuilder builder=new StringBuilder();BufferedReader reader=new BufferedReader(new InputStreamReader(is));String con;try {while((con=reader.readLine())!=null){builder.append(con);}reader.close();} catch (Exception e) {e.printStackTrace();}return builder.toString();}
}
 

微笑微笑微笑activity_main

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" tools:context="com.samsung.sfl10191.MainActivity">
<ListView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/lv"
    ></ListView>
</android.support.constraint.ConstraintLayout>




微笑微笑微笑适配器MyAdapter类

public class MyAdapter extends BaseAdapter{Context con;List<News.NewslistBean> lists;public MyAdapter(Context con, List<News.NewslistBean> lists) {this.con=con;this.lists=lists;}@Override
    public int getCount() {return lists.size();}@Override
    public Object getItem(int position) {return lists.get(position);}@Override
    public long getItemId(int position) {return position;}@Override
    public View getView(int position, View convertView, ViewGroup parent) {ViewHolder holder;if(convertView==null){holder = new ViewHolder();convertView = View.inflate(con,R.layout.item,null);holder.img = (ImageView) convertView.findViewById(R.id.img);holder.title = (TextView) convertView.findViewById(R.id.tv_title);convertView.setTag(holder);}else{holder = (ViewHolder) convertView.getTag();}holder.title.setText(lists.get(position).getTitle());ImageLoader.getInstance().init(ImageLoaderConfiguration.createDefault(con));ImageLoader.getInstance().displayImage(lists.get(position).getPicUrl().toString(),holder.img);return convertView;}class ViewHolder {TextView title;ImageView img;}
}
item 布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent"><ImageView
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:id="@+id/img"/><TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/tv_title"
        /></LinearLayout>


 

Bean类可以换成这个链接:http://www.xieast.com/api/news/news.php

(记得上面的链接也要一起换)

Bean类 News
public class News {/**
     * code : 200
     * msg : success
     * newslist : [{"ctime":"2017-10-19","title":"财新将全面收费 \u201c财新通\u201d问世","description":"健康点healthpoint","picUrl":"https://t1.qpic.cn/mblogpic/34d9dfb75cfceb04a840/2000","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371237&signature=UtWCCzY7cc41Os1d*zC5vmHTSC16K*ObDmVLSMPEGBGevaU7Iv7eS6lWazuYAmrmioKb2AjS70n6pAWLS1yVyP8GenoWkX3qSFotv90gnQY="},{"ctime":"2017-10-19","title":"A股重要时间窗,谁是最大赢家?近13亿元大单抢筹12只个股(名单)","description":"和讯股票","picUrl":"https://t1.qpic.cn/mblogpic/f01a972dbcc1060fd456/2000","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371236&signature=hS6p51Z3mxkZjPaoTF3reR8jhlW2icEP0ONmPGoAdBkFOcVHXTcweULe7X3LpeNBFji59GoaP0uRG04wsfO2JDMvoUqViS0m8Ox-ghygPJQ="},{"ctime":"2017-10-19","title":"【晨报健康】家长们注意!宝宝爱咬指甲是缺微量元素,还可能是心理问题","description":"许昌晨报","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-54523025.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371236&signature=V8REkzFTdHAoMo3X6rM49RadrAtk7uS-HPQzIy36kyO*o3smsFAMdueqRSzZMTbYOEXnxwVn7be5cKmY-IJ2zAZM8904iOzwbddRFaUtYOg="},{"ctime":"2017-10-19","title":"青山之恋 青春之恋 看《青恋》","description":"FM95浙江经济广播","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-34497627.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371236&signature=Dwg9MLnjMi*08GMHfMCv8hwga2zSWN5apJtgOY3grPqpPJ2MRT8OLPWNXt2Cb-HYjPySj5eZ*FX9IT*qQjWAx97cz-AB5DOcATs0hZCXr08="},{"ctime":"2017-10-19","title":"看完近40所热门民办幼升小3年面试真题,我发现英语应该这样准备","description":"金融辣妈","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-55332312.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371235&signature=SnczEF4q6JlHR9btdgUs8ZDTRbuccMx5veRDpiNeSYog9W6QVaZttSipOSi*KnHmRrACgRpj9Y-wqMMFMyNoIh3QO8F5-xgJyD0cCGuZCb0="},{"ctime":"2017-10-19","title":"【晨报生活】家里装了这种水龙头的都看看!必须马上清理","description":"许昌晨报","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-54453832.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371234&signature=vfXQVBJRwtCm72RJ0dEBeOxqJJl3vT1bqyLpFymEzjFxo0Pjh3-fTiYcYhhK9mG9p2sC2YQU8-nymSFtucyl64xxmlnjMzON0-o6kI5vxO0="},{"ctime":"2017-10-19","title":"小小常学成语| 囫囵吞枣","description":"常青藤爸爸","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-51774641.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371234&signature=hcOVVSRjeJdwbNTtxQ55l2T14sP7EEpBJPv8R6p9n2yZLwbhXLuI-Yv3*0*86P9pRYhJCl*b-HMGOFl3ef9cqqiJHl7qteBjdqnK9kak9co="},{"ctime":"2017-10-19","title":"中国真的是发展中国家?答案残忍,让无数西方人满身冷汗!","description":"墨者善狩","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-54993853.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371233&signature=LmfrXWxk3w2nIcCR16IgPp0g5ZikcS77PIKePd41n5OaiXUooVs4Bhk1kZ2nvR7bfst2MX8VgUj7jIDP12MEGq7z5wlS*tsPMjTVCS-HGDk="},{"ctime":"2017-10-19","title":"橡胶:企稳上涨还需时日","description":"期货日报","picUrl":"https://t1.qpic.cn/mblogpic/f01a972dbcc1060fd456/2000","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371233&signature=28obULKpBc*Z84dxynArFR*6yzY0JRqq9P6mAUdbYcxOZWHsyQHI*SwsztAzBZkWH8TffGCcPu6FfHHy8kiLk3jAmlurnbNKobV61PbuFdM="},{"ctime":"2017-10-19","title":"下游需求良好,市场购销活跃:国内新产大豆量增价升","description":"期货日报","picUrl":"https://t1.qpic.cn/mblogpic/f01a972dbcc1060fd456/2000","url":"https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371233&signature=M-y2V58Cp1wLX41cJtGT1vs3Ua4VKArCEbp9yBzO3*ZraloJOhYoCAgv3JiE7q-cMG2KJH41nqs2JTOR3LLbLhxOITSx6HRtEUznPEiW8l8="}]
     */

    private int code;private String msg;private List<NewslistBean> newslist;public int getCode() {return code;}public void setCode(int code) {this.code = code;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}public List<NewslistBean> getNewslist() {return newslist;}public void setNewslist(List<NewslistBean> newslist) {this.newslist = newslist;}public static class NewslistBean {/**
         * ctime : 2017-10-19
         * title : 财新将全面收费 财新通问世
         * description : 健康点healthpoint
         * picUrl : https://t1.qpic.cn/mblogpic/34d9dfb75cfceb04a840/2000
         * url : https://mp.weixin.qq.com/s?src=16&ver=435&timestamp=1508371237&signature=UtWCCzY7cc41Os1d*zC5vmHTSC16K*ObDmVLSMPEGBGevaU7Iv7eS6lWazuYAmrmioKb2AjS70n6pAWLS1yVyP8GenoWkX3qSFotv90gnQY=
         */

        private String ctime;private String title;private String description;private String picUrl;private String url;public String getCtime() {return ctime;}public void setCtime(String ctime) {this.ctime = ctime;}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getDescription() {return description;}public void setDescription(String description) {this.description = description;}public String getPicUrl() {return picUrl;}public void setPicUrl(String picUrl) {this.picUrl = picUrl;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;}}
}

这篇关于ListView获取网路链接展示接口信息的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/778721

相关文章

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

如何利用Java获取当天的开始和结束时间

《如何利用Java获取当天的开始和结束时间》:本文主要介绍如何使用Java8的LocalDate和LocalDateTime类获取指定日期的开始和结束时间,展示了如何通过这些类进行日期和时间的处... 目录前言1. Java日期时间API概述2. 获取当天的开始和结束时间代码解析运行结果3. 总结前言在J

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

MyBatis-Flex BaseMapper的接口基本用法小结

《MyBatis-FlexBaseMapper的接口基本用法小结》本文主要介绍了MyBatis-FlexBaseMapper的接口基本用法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具... 目录MyBATis-Flex简单介绍特性基础方法INSERT① insert② insertSelec

Spring排序机制之接口与注解的使用方法

《Spring排序机制之接口与注解的使用方法》本文介绍了Spring中多种排序机制,包括Ordered接口、PriorityOrdered接口、@Order注解和@Priority注解,提供了详细示例... 目录一、Spring 排序的需求场景二、Spring 中的排序机制1、Ordered 接口2、Pri

Idea实现接口的方法上无法添加@Override注解的解决方案

《Idea实现接口的方法上无法添加@Override注解的解决方案》文章介绍了在IDEA中实现接口方法时无法添加@Override注解的问题及其解决方法,主要步骤包括更改项目结构中的Languagel... 目录Idea实现接China编程口的方法上无法添加@javascriptOverride注解错误原因解决方

java获取图片的大小、宽度、高度方式

《java获取图片的大小、宽度、高度方式》文章介绍了如何将File对象转换为MultipartFile对象的过程,并分享了个人经验,希望能为读者提供参考... 目China编程录Java获取图片的大小、宽度、高度File对象(该对象里面是图片)MultipartFile对象(该对象里面是图片)总结java获取图片

Java通过反射获取方法参数名的方式小结

《Java通过反射获取方法参数名的方式小结》这篇文章主要为大家详细介绍了Java如何通过反射获取方法参数名的方式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、前言2、解决方式方式2.1: 添加编译参数配置 -parameters方式2.2: 使用Spring的内部工具类 -

Java如何获取视频文件的视频时长

《Java如何获取视频文件的视频时长》文章介绍了如何使用Java获取视频文件的视频时长,包括导入maven依赖和代码案例,同时,也讨论了在运行过程中遇到的SLF4J加载问题,并给出了解决方案... 目录Java获取视频文件的视频时长1、导入maven依赖2、代码案例3、SLF4J: Failed to lo