package com.example.myapplication2;
import android.os.Bundle;
import android.widget.ListView;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class MainActivity extends Activity {
private ImageView img;
private List<HashMap<String, Object>> mData;
private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.friend_list);
mData = getData();//为刚才的变量赋值
MyAdapter adapter = new MyAdapter(this);//创建一个适配器
listView = (ListView) findViewById(R.id.listView1);//实例化ListView
listView.setAdapter(adapter);//为ListView控件绑定适配器
}
/** 自定义适配器 */
public class MyAdapter extends BaseAdapter {
private LayoutInflater mInflater;// 动态布局映射
public MyAdapter(Context context) {
this.mInflater = LayoutInflater.from(context);
}
// 决定ListView有几行可见
@Override
public int getCount() {
return mData.size();// ListView的条目数
}
@Override
public Object getItem(int arg0) {
return null;
}
@Override
public long getItemId(int arg0) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
convertView = mInflater.inflate(R.layout.friend_list_item, null);//根据布局文件实例化view
TextView title = (TextView) convertView.findViewById(R.id.title);//找某个控件
title.setText(mData.get(position).get("title").toString());//给该控件设置数据(数据从集合类中来)
TextView time = (TextView) convertView.findViewById(R.id.time);//找某个控件
time.setText(mData.get(position).get("time").toString());//给该控件设置数据(数据从集合类中来)
TextView info = (TextView) convertView.findViewById(R.id.info);
info.setText(mData.get(position).get("info").toString());
img = (ImageView) convertView.findViewById(R.id.img);
img.setBackgroundResource((Integer) mData.get(position).get("img"));
return convertView;
}
}
// 初始化一个List
private List<HashMap<String, Object>> getData() {
// 新建一个集合类,用于存放多条数据
ArrayList<HashMap<String, Object>> list = new ArrayList<HashMap<String, Object>>();
HashMap<String, Object> map = null;
for (int i = 1; i <= 100; i++) {
map = new HashMap<String, Object>();
map.put("title", "人物" + i);
map.put("time", "");
map.put("info", "请分享最近的新瓜!");
map.put("img", R.drawable.pic_person);
list.add(map);
}
return list;
}
public void showInfo(int position){
getData();
}
}
![avatar](https://profile-avatar.csdnimg.cn/default.jpg!1)
颖念730
- 粉丝: 0
- 资源: 1
最新资源
- 1482-基于51单片机的日历,闹钟,秒表,定时,倒计时系统proteus,原理图、流程图、物料清单、仿真图、源代码.zip
- MySql 教程-如何学习 mysql.pdf
- 1481-基于51单片机的日期定时温度控制系统 热电偶(日历 温控PT100,LCD1602,矩阵键盘)proteus.zip
- 1480-基于51单片机的日历(温度,闹钟)proteus,原理图、流程图、物料清单、仿真图、源代码.zip
- shap解释机器学习模型,只能对传统机器学习进行解析,不适用于遗传算法等,另外,需要sklearshap解释机器学习模型,只能对
- 1479-基于51单片机的日历(产品、数码管)proteus,原理图、流程图、物料清单、仿真图、源代码.zip
- .js suixinamgud bao
- Mysql 教程 - mac 安装 Mysql 教程.pdf
- Mysql 教程 - docker 安装 Mysql 教程.pdf
- J:\csdn\mysql
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)