您的位置:首页 > 其它

xlistview获取图片与文字

2017-09-15 10:18 155 查看

1.布局

(1)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
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.example.lxx.MainActivity">
<com.example.lxx.view.XListView
android:id="@+id/xw"
android:layout_height="match_parent"
android:layout_width="match_parent"
>

</com.example.lxx.view.XListView>
</RelativeLayout>

(2)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">

<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="58dp"
android:layout_marginStart="58dp"
android:layout_marginTop="61dp"
app:srcCompat="@mipmap/ic_launcher" />

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/imageView"
android:layout_marginBottom="11dp"
android:layout_marginLeft="107dp"
android:layout_marginStart="107dp"
android:layout_toEndOf="@+id/imageView"
android:layout_toRightOf="@+id/imageView"
android:text="TextView" />

<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignEnd="@+id/textView1"
android:layout_alignParentTop="true"
android:layout_alignRight="@+id/textView1"
android:layout_marginEnd="21dp"
android:layout_marginRight="21dp"
android:layout_marginTop="28dp"
android:text="TextView" />
</RelativeLayout>

Mainactivtiy

package com.example.lxx;

import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.example.lxx.view.XListView;
import com.google.gson.Gson;
import com.nostra13.universalimageloader.core.ImageLoader;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

import static com.example.lxx.R.id.imageView;

public class MainActivity extends AppCompatActivity implements XListView.IXListViewListener {

private XListView xw;
private Mydapter mydapter;
private  List<JsonBeans.DataBean> list=new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取控件

intview();
Handler handler = new Handler();
mydapter = new Mydapter();
xw.setAdapter(mydapter);
path();

}
private void intview() {

xw = (XListView) findViewById(R.id.xw);
xw.setXListViewListener(this);
xw.setPullLoadEnable(true);
}
private void path() {
new AsyTakString().execute("http://www.yulin520.com/a2a/impressApi/news/mergeList?pageSize=10&page=1");
}
class Mydapter extends BaseAdapter{

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

@Override
public Object getItem(int i) {
return list.get(i);
}

@Override
public long getItemId(int i) {
return i;
}

@Override
public View getView(int i, View view, ViewGroup viewGroup) {
Hodler hodel;
if (view==null){
hodel = new Hodler();
view = view.inflate(MainActivity.this, R.layout.xl, null);
hodel.textview=(TextView)view.findViewById(R.id.textView1);
hodel.text=(TextView) view.findViewById(R.id.textView2);
hodel.imageView1=(ImageView) view.findViewById(imageView);
view.setTag(hodel);

}
else {
hodel = (Hodler) view.getTag();
}
hodel.text.setText(list.get(i).getTitle());
hodel.textview.setText(list.get(i).getOccupation());

ImageLoader.getInstance().displayImage(list.get(i).getImg(),hodel.imageView1);

return view;

}
class Hodler{

TextView text;
TextView textview;
ImageView imageView1;
}
}

/**
*

class MyImage extends AsyncTask<String,Void,Bitmap>{
private ImageView imageView;

public MyImage(ImageView imageView) {
this.imageView = imageView;
}

@Override
protected Bitmap doInBackground(String... strings) {
try {
URL url = new URL(strings[0]);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
int responseCode = connection.getResponseCode();
if (responseCode==200)
{
InputStream inputStream = connection.getInputStream();
Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
return bitmap;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}

@Override
protected void onPostExecute(Bitmap bitmap) {
super.onPostExecute(bitmap);
imageView.setImageBitmap(bitmap);
}
} */
class AsyTakString extends AsyncTask<String,Void,String>{

@Override
protected String doInBackground(String... strings) {
try {
URL url = new URL(strings[0]);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
int responseCode = connection.getResponseCode();
if (responseCode==200)
{
InputStream inputStream = connection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
String str = "";
StringBuffer stringBuffer = new StringBuffer();
while ((str=bufferedReader.readLine())!=null)
{
stringBuffer.append(str);
}
return  stringBuffer.toString();

}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}

@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Gson gson = new Gson();
JsonBeans jsonBeans = gson.fromJson(s, JsonBeans.class);
List<JsonBeans.DataBean> data = jsonBeans.getData();
list.addAll(data);
mydapter.notifyDataSetChanged();
}

}

public  void  onLoad()
{
xw.stopRefresh();
xw.stopLoadMore();

xw.setRefreshTime("刚刚");
}
@Override
public void onRefresh() {
list.clear();
path();
onLoad();

}

@Override
public void onLoadMore() {
path();
onLoad();
}

}

Bean

package com.example.lxx;

import java.util.List;

/**
* author:Created by WangZhiQiang on 2017/9/12.
*/

class JsonBeans {

/**
* code : 1
* height : 0
* width : 0
* success : true
* data : [{"userAge":33,"topTime":1469503026000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/334?a=1505182136574","createTime":1466160199000,"hxKey":"60fd9c2377f81ba1ccca450fb794e016","img":"http://img1.yulin520.com/news/HPUCVP74IFR0OKCZ9QQH.jpg#405_304","yulin":"81373","star":58,"title":"刘峰鸣 :能文能武,Call Me峰鸣哥","occupation":"证劵投资","userImg":"http://img1.yulin520.com/news/HPUCVP74IFR0OKCZ9QQH.jpg#405_304","impressEditId":334,"impressType":0,"replyTimes":17,"remark":"","click":0,"introduction":"83年/巨蟹座/ 开朗幽默,热情善良,追求刺激/喜欢温柔,体贴,可爱,善良的女孩/金融","source":0,"userName":"刘LLL","reporter":0,"status":1,"content":""},{"userAge":25,"topTime":1469503022000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/319?a=1505182136574","createTime":1465380170000,"hxKey":"dac884f7cc81691ba28a004091cbe122","img":"http://img1.yulin520.com/news/BPKZUX0MNFR0OT0WLCOD.png#598_450","yulin":"80821","star":77,"title":"刘佳怡 :直白女汉子也有个文艺梦","occupation":"保险","userImg":"http://img1.yulin520.com/news/BPKZUX0MNFR0OT0WLCOD.png#598_450","impressEditId":319,"impressType":0,"replyTimes":12,"remark":"","click":0,"introduction":"91年/处女座/性格直白,爱好广泛,有点女汉子/喜欢性格开朗,三观契合,高冷文艺范,有肌肉,175+/公司职业","source":0,"userName":"嘉咦咦咦","reporter":0,"status":1,"content":""},{"userAge":29,"topTime":1468980785000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/324?a=1505182136574","createTime":1465722569000,"hxKey":"ebf75ccd1fba85f248988d40e572914e","img":"http://img1.yulin520.com/news/UPPN83L0IFR0OBC1A4AK.jpg#800_600","yulin":"80569","star":52,"title":"陈松 :爱搞新花样的设计师","occupation":"互联网","userImg":"http://img1.yulin520.com/news/UPPN83L0IFR0OBC1A4AK.jpg#800_600","impressEditId":324,"impressType":0,"replyTimes":13,"remark":"","click":0,"introduction":"87年/处女座/善良可爱,安静温柔,爱独立思考/喜欢三观相似,经历相似,性格活泼的女孩/互联网设计师 ","source":0,"userName":"Song","reporter":0,"status":1,"content":""},{"userAge":26,"topTime":1468980773000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/323?a=1505182136574","createTime":1465721939000,"hxKey":"580786532670bc072b0aeb795bd6ddc7","img":"http://img1.yulin520.com/news/SPPW8T9QHFR0OM3HID0X.jpg#1280_960","yulin":"80983","star":101,"title":"秦心 :外形不娇小,心思很细腻","occupation":"银行","userImg":"http://img1.yulin520.com/news/SPPW8T9QHFR0OM3HID0X.jpg#1280_960","impressEditId":323,"impressType":0,"replyTimes":16,"remark":"","click":0,"introduction":"90年/天蝎座/爱美食,爱分享,有点内向/喜欢阳光,干净,175+的男孩子/银行接待","source":0,"userName":"秦心","reporter":0,"status":1,"content":""},{"userAge":23,"topTime":1468574992000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/337?a=1505182136574","createTime":1466162998000,"hxKey":"37dee7aaed1862c64c4fe38d75ccd52a","img":"http://img1.yulin520.com/news/XPW8OZXMSFR0O015UA7D.jpg#598_597","yulin":"81316","star":55,"title":"温其堂 :细心温柔IT\u201c熊猫\u201d男","occupation":"互联网","userImg":"http://img1.yulin520.com/news/XPW8OZXMSFR0O015UA7D.jpg#598_597","impressEditId":337,"impressType":0,"replyTimes":17,"remark":"","click":0,"introduction":"93年/水瓶座/温柔体贴,踏实细心/喜欢三观相符的女孩子/前端工程师","source":0,"userName":"榴莲","reporter":0,"status":1,"content":""},{"userAge":24,"topTime":1468574986000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/340?a=1505182136574","createTime":1466500236000,"hxKey":"2a294b9ffd9fb38d7b5b8739c821720f","img":"http://img1.yulin520.com/news/RPZ58LLNXFR0OKFGFHGK.jpg#616_695","yulin":"81370","star":72,"title":"曾思慧: 爱冒险爱尖叫的真性情Girl","occupation":"银行","userImg":"http://img1.yulin520.com/news/RPZ58LLNXFR0OKFGFHGK.jpg#616_695","impressEditId":340,"impressType":0,"replyTimes":13,"remark":"","click":0,"introduction":"92年/金牛座 /性格随和,自信大方/喜欢脾气好,爱运动,对人友好的男生/公司职员","source":0,"userName":"pony","reporter":0,"status":1,"content":""},{"userAge":25,"topTime":1468203095000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/341?a=1505182136574","createTime":1466678686000,"hxKey":"9f2d5f4346dee0c4983cb77f9a1892e7","img":"http://img1.yulin520.com/news/NQ1HJD75IFR0OARCWFEG.jpg#501_499","yulin":"80908","star":34,"title":"杨辉: 挑战自我从早起开始","occupation":"市场推广","userImg":"http://img1.yulin520.com/news/NQ1HJD75IFR0OARCWFEG.jpg#501_499","impressEditId":341,"impressType":0,"replyTimes":11,"remark":"","click":0,"introduction":"91年/巨蟹座/乐观开朗,沉稳内敛,机智幽默/喜欢温柔,体贴,孝顺的女生","source":0,"userName":"拯救","reporter":0,"status":1,"content":""},{"userAge":24,"topTime":1467618377000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/244?a=1505182136574","createTime":1461738088000,"hxKey":"751120bb7102fa563f098ee8c33ecb67","img":"http://img1.yulin520.com/news/SO9EZSX0QC90ONZY8SVZ.jpg#619_650","yulin":"77323","star":46,"title":"蔡嘉纯:咱东北菇凉特开朗","occupation":"市场推广","userImg":"http://img1.yulin520.com/news/SO9EZSX0QC90ONZY8SVZ.jpg#619_650","impressEditId":244,"impressType":0,"replyTimes":9,"remark":"","click":0,"introduction":"92年 狮子座/开朗东北妞/想开书店/公司职员","source":0,"userName":"林bibibi","reporter":0,"status":1,"content":""},{"userAge":22,"topTime":1467367384000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/246?a=1505182136574","createTime":1461749927000,"hxKey":"785fd3ce68d2a280a99896946dc67bf2","img":"http://img1.yulin520.com/news/OOAA5UE7EC90OM4X4AQ7.jpg#800_600","yulin":"77479","star":41,"title":"李林:曾经的淘气小子","occupation":"信贷","userImg":"http://img1.yulin520.com/news/OOAA5UE7EC90OM4X4AQ7.jpg#800_600","impressEditId":246,"impressType":0,"replyTimes":11,"remark":"","click":0,"introduction":"94年 水瓶座/曾经是淘气包/人缘好讲义气/金融业客户经理","source":0,"userName":"李林","reporter":0,"status":1,"content":""},{"userAge":25,"topTime":1467367368000,"recommend":0,"url":"http://www.yulin520.com/a2a/h5/impress/i1/218?a=1505182136574","createTime":1460446369000,"hxKey":"406e5f1f020f65203d200b686cd11da3","img":"http://img1.yulin520.com/news/FNTQDAWAJKF0OGYIUMRO.jpg#800_600","yulin":"76330","star":53,"title":"唐政:眉清目秀好少年","occupation":"互联网","userImg":"http://img1.yulin520.com/news/FNTQDAWAJKF0OGYIUMRO.jpg#800_600","impressEditId":218,"impressType":0,"replyTimes":16,"remark":"","click":0,"introduction":"91年 天蝎座/积极乐观/追求新奇事物/互联网销售经理","source":0,"userName":"Truman✨","reporter":0,"status":1,"content":""}]
* message : null
*/

private int code;
private int height;
private int width;
private boolean success;
private Object message;
private List<DataBean> data;

public int getCode() {
return code;
}

public void setCode(int code) {
this.code = code;
}

public int getHeight() {
return height;
}

public void setHeight(int height) {
this.height = height;
}

public int getWidth() {
return width;
}

public void setWidth(int width) {
this.width = width;
}

public boolean isSuccess() {
return success;
}

public void setSuccess(boolean success) {
this.success = success;
}

public Object getMessage() {
return message;
}

public void setMessage(Object message) {
this.message = message;
}

public List<DataBean> getData() {
return data;
}

public void setData(List<DataBean> data) {
this.data = data;
}

public static class DataBean {
/**
* userAge : 33
* topTime : 1469503026000
* recommend : 0
* url : http://www.yulin520.com/a2a/h5/impress/i1/334?a=1505182136574 * createTime : 1466160199000
* hxKey : 60fd9c2377f81ba1ccca450fb794e016
* img : http://img1.yulin520.com/news/HPUCVP74IFR0OKCZ9QQH.jpg#405_304 * yulin : 81373
* star : 58
* title : 刘峰鸣 :能文能武,Call Me峰鸣哥
* occupation : 证劵投资
* userImg : http://img1.yulin520.com/news/HPUCVP74IFR0OKCZ9QQH.jpg#405_304 * impressEditId : 334
* impressType : 0
* replyTimes : 17
* remark :
* click : 0
* introduction : 83年/巨蟹座/ 开朗幽默,热情善良,追求刺激/喜欢温柔,体贴,可爱,善良的女孩/金融
* source : 0
* userName : 刘LLL
* reporter : 0
* status : 1
* content :
*/

private int userAge;
private long topTime;
private int recommend;
private String url;
private long createTime;
private String hxKey;
private String img;
private String yulin;
private int star;
private String title;
private String occupation;
private String userImg;
private int impressEditId;
private int impressType;
private int replyTimes;
private String remark;
private int click;
private String introduction;
private int source;
private String userName;
private int reporter;
private int status;
private String content;

public int getUserAge() {
return userAge;
}

public void setUserAge(int userAge) {
this.userAge = userAge;
}

public long getTopTime() {
return topTime;
}

public void setTopTime(long topTime) {
this.topTime = topTime;
}

public int getRecommend() {
return recommend;
}

public void setRecommend(int recommend) {
this.recommend = recommend;
}

public String getUrl() {
return url;
}

public void setUrl(String url) {
this.url = url;
}

public long getCreateTime() {
return createTime;
}

public void setCreateTime(long createTime) {
this.createTime = createTime;
}

public String getHxKey() {
return hxKey;
}

public void setHxKey(String hxKey) {
this.hxKey = hxKey;
}

public String getImg() {
return img;
}

public void setImg(String img) {
this.img = img;
}

public String getYulin() {
return yulin;
}

public void setYulin(String yulin) {
this.yulin = yulin;
}

public int getStar() {
return star;
}

public void setStar(int star) {
this.star = star;
}

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}

public String getOccupation() {
return occupation;
}

public void setOccupation(String occupation) {
this.occupation = occupation;
}

public String getUserImg() {
return userImg;
}

public void setUserImg(String userImg) {
this.userImg = userImg;
}

public int getImpressEditId() {
return impressEditId;
}

public void setImpressEditId(int impressEditId) {
this.impressEditId = impressEditId;
}

public int getImpressType() {
return impressType;
}

public void setImpressType(int impressType) {
this.impressType = impressType;
}

public int getReplyTimes() {
return replyTimes;
}

public void setReplyTimes(int replyTimes) {
this.replyTimes = replyTimes;
}

public String getRemark() {
return remark;
}

public void setRemark(String remark) {
this.remark = remark;
}

public int getClick() {
return click;
}

public void setClick(int click) {
this.click = click;
}

public String getIntroduction() {
return introduction;
}

public void setIntroduction(String introduction) {
this.introduction = introduction;
}

public int getSource() {
return source;
}

public void setSource(int source) {
this.source = source;
}

public String getUserName() {
return userName;
}

public void setUserName(String userName) {
this.userName = userName;
}

public int getReporter() {
return reporter;
}

public void setReporter(int reporter) {
this.reporter = reporter;
}

public int getStatus() {
return status;
}

public void setStatus(int status) {
this.status = status;
}

public String getContent() {
return content;
}

public void setContent(String content) {
this.content = content;
}
}
}

ImageLoder

package com.example.lxx;

import android.app.Application;

import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;

/**
* author:Created by WangZhiQiang on 2017/9/12.
*/

public class Img extends Application
{
@Override
public void onCreate() {
super.onCreate();
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(this).build();

ImageLoader.getInstance().init(config);

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: