HttpURLConnection从网络上获取和提交数据: 文本、图片(smartImageView)、音乐、视频。补间动画

您所在的位置:网站首页 图像url怎么看 HttpURLConnection从网络上获取和提交数据: 文本、图片(smartImageView)、音乐、视频。补间动画

HttpURLConnection从网络上获取和提交数据: 文本、图片(smartImageView)、音乐、视频。补间动画

2022-12-18 06:06| 来源: 网络整理| 查看: 265

package com.itheima.newsclient;

import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;import java.util.List;

import android.app.Activity;import android.graphics.Color;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ImageView;import android.widget.ListView;import android.widget.TextView;

import com.itheima.newsclient.domain.NewsItem;import com.itheima.newsclient.service.NewsItemParseService;

public class MainActivity extends Activity {

private ListView lv; private List list; private static final String path = "http://192.168.1.254:8080/news.xml";

private Handler handler = new Handler(){ public void handleMessage(Message msg) { //填充listview lv.setAdapter(new MyAdapter()); }; };

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);

lv = (ListView) findViewById(R.id.lv);

//给listview填充数据 fillData(); }

private void fillData() {

//访问网络,解析xml个数据 new Thread(){ public void run() { // 访问网络,从网络上获取图片的数据,并且现在imageview try { // 1、创建URL对象,打开一个HTTP类型的连接: URL url = new URL(path); HttpURLConnection conn = (HttpURLConnection) url .openConnection(); // 2、设置请求方式GET、POST,连接的超时时间等请求参数: conn.setRequestMethod("GET");// 默认是GET方式,要大写 conn.setReadTimeout(3000); // conn.setRequestProperty("Accept-Language", "zh-CN"); // 3、得到服务器端返回的响应数据(以二进制流的形式返回响应数据),判断响应码是不是200请求成功、404找不到资源、503服务器端内部错误: //判断响应码是不是200 int code = conn.getResponseCode(); if(200 == code){ InputStream is = conn.getInputStream(); // 4、把二进制流的响应数据转换成需要的数据类型: list = NewsItemParseService.parseNewsItems(is);

//在imageview上显示一张图片// iv.setImageBitmap(bm);

// 2、在子线程中得到handler的引用,调用handler的sendMessage,给主线程发送一个消息,我要修改UI界面了// 创建一个消息对象,消息盒子 Message msg = new Message(); handler.sendMessage(msg); }

} catch (Exception e) { e.printStackTrace(); } }; }.start(); }

private class MyAdapter extends BaseAdapter{

@Override public int getCount() { return list.size(); }

@Override public View getView(int position, View convertView, ViewGroup parent) { View view =null; if(convertView != null){ view = convertView; }else{ view = View.inflate(MainActivity.this, R.layout.item, null); }

//给布局文件中的控件填充数据 ImageView iv_image = (ImageView) view.findViewById(R.id.iv_image); TextView tv_title = (TextView) view.findViewById(R.id.tv_title); TextView tv_desc = (TextView) view.findViewById(R.id.tv_desc); TextView tv_type = (TextView) view.findViewById(R.id.tv_type);

NewsItem item = list.get(position); tv_title.setText(item.getTitle()); tv_desc.setText(item.getDescription());

if("1".equals(item.getType())){ tv_type.setText(item.getComment()+"跟贴"); tv_type.setTextColor(Color.BLACK); }else if("2".equals(item.getType())){ tv_type.setText("视频"); tv_type.setTextColor(Color.BLUE); }else if("3".equals(item.getType())){ tv_type.setText("专题"); tv_type.setTextColor(Color.RED); }

return view; }

@Override public Object getItem(int position) { // TODO Auto-generated method stub return null; }

@Override public long getItemId(int position) { // TODO Auto-generated method stub return 0; }

}}



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3