ListView控件是列表视图展示,排列方式是纵向。

ListView组件实现微信通讯录效果,包含头像和文字,不能用entries这个属性来添加,要用SimpleAdapter适配器来添加数据
布局:垂直线性布局方式
头和尾全部用 ImageView组件来实现,中间我们用 ListView。

效果如图:(可滑动,点击显示名字)

一、准备头像图片:大小建议80x80;top与bottom图片如下图,放入drawable;

二、在activity_main.xml建立组件,如图

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main"android:layout_width="match_parent" android:layout_height="match_parent"android:orientation="vertical"tools:context="com.example.listview.MainActivity"android:weightSum="1"><ImageViewandroid:layout_width="match_parent"android:layout_height="40dp"android:src="@drawable/top"android:scaleType="fitXY" /><ListViewandroid:layout_width="match_parent"android:layout_height="472dp"android:id="@+id/myListView"></ListView><ImageViewandroid:layout_width="match_parent"android:layout_height="40dp"android:src="@drawable/bottom"android:scaleType="fitXY"/>
</LinearLayout>

三、在layout文件下建立一个新的布局文件(名字任意),并在其内建立组件,如图:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="horizontal"android:layout_width="match_parent"android:layout_height="match_parent"><ImageViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:id="@+id/myImage"android:paddingTop="10dp"android:paddingBottom="10dp"android:paddingRight="10dp"android:adjustViewBounds="true"android:maxHeight="80dp"android:maxWidth="80dp"/><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:id="@+id/myTV"android:padding="10dp"android:layout_gravity="center"/></LinearLayout>

四、在MainActivity.java文件中编写代码实现

(这里的代码最好还是自己敲进去,因为直接复制粘贴会报错)

       //定义整形数组存放图片idint[] imageid=new int[]{R.drawable.img01,R.drawable.img02,R.drawable.img03,R.drawable.img04,R.drawable.img05,R.drawable.img06,R.drawable.img07,R.drawable.img08,R.drawable.img09,R.drawable.img10,R.drawable.img11,R.drawable.img12};//定义字符串数组存放用户昵称String[] nickName=new String[]{"诸葛亮","领队李白","韩跳跳","百里守约","是子龙啊","爱哭的玄策","孙策—","守约(小号)","—大乔","白","信","黑色枫叶"};List<Map<String,Object>> list=new ArrayList<Map<String, Object>>();//List<T>for (int i=0;i<imageid.length;i++){Map<String,Object> map=new HashMap<String, Object>();map.put("image",imageid[i]);map.put("name",nickName[i]);list.add(map);}SimpleAdapter simpleAdapter=new SimpleAdapter(this,list,R.layout.main,new String[]{"name","image"},new int[]{R.id.myTV,R.id.myImage});ListView listView= (ListView) findViewById(R.id.myListView);listView.setAdapter(simpleAdapter);listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view, int position, long id) {Map<String,Object> map= (Map<String, Object>) parent.getItemAtPosition(position);String str=map.get("name").toString();Toast.makeText(MainActivity.this, str, Toast.LENGTH_SHORT).show();}});

五、修改AndroidManifest.xml文件(修改样式,也可以不改)

将AppTheme修改为Theme.AppCompat.Light.DarkActionBar

如果出现类似的错误:Error running imageswitcher手机相册图片滑动功能:Default Activity not found

那么就在AndroidManifest.xml文件中加入问题就会得到解决。

<activity android:name=".MainActivity"><intent-filter><action android:name="android.intent.action.MAIN"/><category android:name="android.intent.category.LAUNCHER"/></intent-filter></activity>

到这里就结束了,如果这篇对你用,请帮忙点个赞,谢谢!

安卓:ListView组件实现微信通讯录效果(我的王者队友们)相关推荐

  1. 自定义实现微信通讯录效果View

    欢迎访问我的个人独立博客 ittiger.cn,原创文章,未经允许不得随意转载. 前言 在使用App过程中,经常会有使用到联系人或城市列表的场景,其实这两种效果是一样的,都是右边有个索引列表,点击索引 ...

  2. (字母排序搜索)类似微信通讯录效果

    最近刚好有要做一个聊天通讯录,有点类似微信,所以自己也把探索的总结一下,可能还要进一步优化: 不多说,先上效果图看看: 这里先说一些,要使用拼音字母转换,我们引用了第三方拼音库(pinyin4j-2. ...

  3. 安卓---实验5---ListView制作微信通讯录、朋友圈

    文章目录 1. ListView实现通讯录 实现效果 xml代码 activity_tongxunlu item_pyq Java代码 MyBean MyAdapter MyActivityTongx ...

  4. 小程序组件-仿微信通讯录

    效果图 因为是使用的手机录屏,视频格式为MP4,上传到文章时发现只支持图片,还好电脑自动录屏功能,所以简单的录制了一下,完后又提示只能4M,只能再去压缩图片,所以画质略渣,各位客官讲究的看看吧. 特色 ...

  5. 安卓 listView 组件的使用

    xml <ListView android:id="@+id/list1"android:layout_width="wrap_content"andro ...

  6. 【Flutter 问题系列第 5 篇】Flutter 去除 ListView 组件中的蓝色回弹效果

    这是[Flutter 问题系列第 5 篇],如果觉得有用的话,欢迎关注专栏. ListView 组件默认的滑动效果如下 可以看到,在顶部向下拖动或者到底部向上拖动时,会有一个蓝色的回弹效果. 这是因为 ...

  7. flutter 微信通讯录

    Flutter  仿制微信通讯录效果,致效果如下: 有几个技术细节: 总体可滑动,少于屏幕长度也可滑动 对于数据的处理.昵称 拼音首字母排序, 右侧字母导航,点击/滑动:移动到指定位置 当点击/滑动 ...

  8. 微信通讯录java实现_原生JS实现微信通讯录

    最近工作当中再一次遇到要实现一个车辆列表,要求能够像微信通讯录一样,实现右侧滑动,点击功能,并且滑动过程中,能够有提示.原来用jquery实现过一次,为了精简代码,现在用原生的实现一次.想必工作中大家 ...

  9. 原生JS实现微信通讯录

    原生JS实现微信通讯录 最近工作当中再一次遇到要实现一个车辆列表,要求能够像微信通讯录一样,实现右侧滑动,点击功能,并且滑动过程中,能够有提示.原来用jquery实现过一次,为了精简代码,现在用原生的 ...

最新文章

  1. python项目之网络聊天室_Python实现多人聊天室
  2. Opengl-基本概念-对象(很关键啊兄弟这章)
  3. 软件测试管理工具禅道开源版下载安装
  4. 特斯拉中国向招商银行贷款50亿元 工厂本月开始生产
  5. ajax爬取微博,自动滚屏抓取新浪微博
  6. 学术论文的word排版
  7. Windows 串口驱动下载地址 和 Firefly-RK3399开发板 入手指南
  8. 编译原理-8-Bison 语法分析器的生成器
  9. 外贸型网站建设需要多少钱
  10. [Python人工智能] 九.gensim词向量Word2Vec安装及《庆余年》中文短文本相似度计算
  11. C# Winform窗体切换与关闭
  12. 微信公众号快速增粉攻略详解
  13. BigDecimal 金额转换
  14. C++11标准模板(STL)- 算法(std::nth_element)
  15. 粒径测量中的D10 D50 D90的含义
  16. 也发个过VS3.0的MapHack
  17. android手机小内存,世界最小Android手机问世 仅2.4英寸512MB内存
  18. vc获取计算机用户名,vc获取计算机名和ip地址的方法
  19. 吃鸡连点器哪款好用实惠?百收小编给你推荐吧
  20. 【个人成长】高效能人士的七个习惯

热门文章

  1. 微信小程序之图表系列——canvas绘制饼状图,带点击效果
  2. 适用于DELL G3 GTX1650的CUDA驱动
  3. oh-my-zsh powerline
  4. 混合整数求解(MIP)入门技巧02——大M法
  5. matlab的fig图形输出为合适图片大小的pdf页面
  6. 下秒数据入驻用友云生态布局,全面升级数智化,释放数据价值
  7. excel中使用countif函数,计算一列数据的重复内容个数
  8. csv文件介绍与使用
  9. 币改、链改、币收等变革被悄悄搬上币圈的舞台
  10. 学校计算机老师关心学生的作文600字,老师关爱同学的作文十篇