Android 实现ListView 文字+ 图片

2023-10-28

1 ListView item 布局 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:orientation="horizontal"
    tools:context=".item">
    <TextView
        android:id="@+id/DocName"
        android:layout_marginLeft="10dp"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:text="helloworld"
        android:layout_height="wrap_content"/>
    <ImageView
        android:id="@+id/DocName_tv"
        android:layout_width="50dp"
        android:layout_height="wrap_content"
        android:src="@mipmap/go_launcher"/>
</LinearLayout>

2 主显示页布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:orientation="vertical"
    tools:context=".PolicListActivity">
    <!--头部-->
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:background="@color/colorRed"
        android:gravity="center">
        <ImageView
            android:id="@+id/iv_back"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:src="@drawable/ic_left_back"
            android:onClick="onClick">

        </ImageView>
        <TextView
            android:id="@+id/tv_tittle"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:layout_marginRight="20dp"
            android:text="政策加法器"
            android:textSize="16dp"/>
    </LinearLayout>
    <!--列表和按钮-->
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="700dp"
        android:orientation="vertical">
<!--        中间列表-->
        <ScrollView
            android:id="@+id/scrollview"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:fillViewport="true">
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical">
                <ListView
                    android:id="@+id/ListView"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
                </ListView>
            </LinearLayout>

        </ScrollView>
<!--        底部按钮-->
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">
        <Button
            android:id="@+id/bt_goBack"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
            android:text="返回主页"
            android:layout_margin="@dimen/marginSize"
            android:background="@color/colorRed"
            android:textSize="18dp"
            android:onClick="onClick"/>
    </LinearLayout>

    </LinearLayout>

</LinearLayout>

3 文件+图片保存为List对象

//添加 > 图片
        ArrayList<Map<String, Object>> dataList = new ArrayList<Map<String, Object>>();
        for (int i =0;i<10;i++){
            Log.d("oldDocName", String.valueOf(oldDocName.get(i)));
            Map<String,Object> map = new HashMap<String,Object>();
            String string = (String) oldDocName.get(i).getOldDocName();
            //去掉后缀名
            String filename = string.substring(0,string.lastIndexOf("."));
            map.put("text",filename);
            map.put("pic",R.mipmap.go_launcher);
            dataList.add(map);
        }
        //适配器
        SimpleAdapter adapter = new SimpleAdapter(this, dataList,
                R.layout.item, new String[] { "text", "pic" },
                new int[] { R.id.DocName, R.id.DocName_tv });
        //ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1, oldDocName);
        //实现列表的显示
        listView.setAdapter(adapter);

4 效果图

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 实现ListView 文字+ 图片 的相关文章

  • Android pm 命令详解

    一 pm命令介绍与包名信息查询 1 pm命令介绍 pm工具为包管理 package manager 的简称 可以使用pm工具来执行应用的安装和查询应用宝的信息 系统权限 控制应用 pm工具是Android开发与测试过程中必不可少的工具 sh
  • error: device unauthorized.This adb server's $ADB_VENDOR_KEYS is not set

    以为是个复杂问题 百度之后将自己的手机屏幕解锁打开之后就成功连接上了 同样出问题的小伙伴可以看看是不是接口的问题 或者开发者模式没有打开
  • 征服面试官:Handler 原理篇 掌握这篇面试题汇总,吊打面试官!

    1 Handler 实现机制 Handler 机制有几个核心类 Handler Looper Message MessageQueue Handler 机制是一个典型的生产者消费者模式 多个生产者 一个消费者 该模式是处理线程安全的一个经典
  • 程序员常去的个顶级开发社区

    程序员常去的个顶级开发社区 Stack Overflow 9月份 Stack Overflow也将迎来其6岁的生日 毫无疑问 Stack Overflow是全球最受程序员欢迎的开发社区 而且也是内容最丰富的社区之一 官方网站 http st
  • ubuntu 20.04.4编译 继续尝试编译Android 12,13

    之前使用虚拟机编译过Android10 现在开始记录编译12 上次忘记给镜像了这次补上镜像ubuntu 20 04 4 desktop amd64 链接 https pan baidu com s 1REJ2cIJyqupLRQjN9SW0
  • 通过一个链接打开本地app,或者去下载app

    以前支付宝发短信给你手机 然后你点开这个链接的时候会发现它自动的打开了支付宝软件 这个是如何做到的呢 我认为实现的原理就是 这个链接通过浏览器打开 然后自动执行js方法 如果本地有支付宝软件 就去打开这个方法 当然支付宝app也要做对应的处
  • 04 ImageView中图片保存到文件

    最近做的一个小App中的一个功能 把ImageView中的图片保存为一个 jpg文件 如果设备上有SDCard 图片会被保存到SD卡上 如果没有则保存在设备的存储空间中 这里主要包含了两个要点 一是 Android文件保存时文件夹的创建 二
  • 全局监控 click 点击事件的四种方式

    本文主要给大家分享如何在全局上去监听 click 点击事件 并做些通用处理或是拦截 使用场景可能就是具体的全局防快速重复点击 或是通用打点分析上报 用户行为监控等 以下将以四种不同的思路和实现方式去监控全局的点击操作 由简单到复杂逐一讲解
  • Android 新增一个自定义分区

    在某个项目中 有一个需求 需要新增一个xxx分区 这个分区类似于vendor oem分区 名字为指定的 此处有点好奇 为什么不直接使用oem分区 而是另外弄一个分区名出来 功能实现点 在root目录下新增分区的挂载目录 将自定义分区的内容生
  • Android studio 多渠道开发App以及打包方法

    Android studio 多渠道开发App及打包方法 大家好 技术小白又来总结经验了 开发过程中我们的App首先需要在开发环境下开发 开发完之后需要打包到测试环境提供给测试人员开发 测试人员测试通过后需要打包到正式环境进行上线 这些过程
  • onInterceptTouchEvent和onTouchEvent调用关系详解

    一 onTouch onTouch是View中OnTouchListener接口中的方法 处理View及其子类被touch是的事件处理 当然 前提是touch时间能够传递到指定的view Q1 为什么会传递不到呢 Java代码 Interf
  • Android 内存泄露分析

    1 内存泄漏简介 内存泄漏是指内存空间使用完毕后无法被释放的现象 尽管Java有垃圾回收机制 GC 但是对于还保持着引用 逻辑上却已经不会再用到的对象 垃圾回收器不会回收它们 内存泄漏带来的危害 用户对单次的内存泄漏并没有什么感知 但当可用
  • Android Studio远程连接模拟器调试

    目录 需求 ADB端口说明 远程连接步骤 启动模拟器 ADB连接 端口映射 远程连接 需求 Android Studio 高版本已经可以使用 Pair Devices Using Wi fi 功能连接同一局域网下的真机设备了 低版本也可以使
  • Android 学习笔记

    目录 一 Android入门 1 Android 概述 2 Android Studio 3 创建模拟器 4 使用外部模拟器 5 第一个app 二 app开发基础 1 开发语言 2 app工程目录结构 3 文本控件TextView 1 设置
  • android面试题大全 android面试题总结

    android面试题大全 android面试题总结 1 Android系统的架构 Android系统架构之应用程序 Android会同一系列核心应用程序包一起发布 该应用程序包包括email客户端 SMS短消息程序 日历 地图 浏览器 联系
  • Android Studio 由代理引起的 (Connection refused)、(Read time out)

    首先明确一点 此类问题皆是因为大陆的墙厚又高 在 AS 的 Gradle 构建依赖时由于网速 大陆墙等原因 会遇到各种各样的问题 十分的苦恼而又无可奈何 如果不能定为具体原因 就只能看项目一路飘红了 1 定位问题 由于项目需要对 Andro
  • Eclipse ADT中的logcat不显示解决方法

    1 在Eclipse界面中找到DDMS 然后找到device选项卡 在这个选项卡中选择reset adb 如果不行尝试方法2 2 不用关闭eclipse和模拟器 在Android SDK的tools目录下有个 ddms bat 批处理文件
  • RxPermissions简单使用

    RxPermissions简单使用 描述 随着社会的发展人们也开始重视对隐私的保护 谷歌也在Android6 0 sdk 23 增加了动态权限申请来保护广大用户的隐私 使我们开发者实现起来会很繁琐 代码量也会增多 但是对于程序员来说永远都是
  • Android---SpringBoot实现前后端数据交互

    Android SpringBoot实现前后端数据交互 星光不问赶路人 时间不负有心人 这篇是针对android传数据到后台springboot 使用Xutils框架 使用Xutils框架 关于xutils的使用这是老师的博客大家可以看看
  • kotlin 之于 java 的差异

    一 变量声名 赋值和访问 kotlin 变量是空安全的 一般要求声明时就赋值 声名变量有两个关键字var和val 其中val相当于 java 的中的final 变量类型可显式给出 也可隐式推断 变量也可分可空类型和非空类型 以下给出几种声名

随机推荐

  • Python中常用的运算符

    1 算数运算符 最常见的 标准算数运算符 加减乘除 取余运算符 幂运算符 2 赋值运算符 3 比较运算符 4 布尔运算符 5 位运算符 1 算数运算符 2 赋值运算符 3 比较运算符 对变量或表达式的结果进行大小 真假等比较 一个 称为赋值
  • python怎么用print打出赋值_python print 输出赋值到变量

    In 52 import io In 53 row ACME 50 91 5 In 54 join row TypeError Traceback most recent call last in gt 1 join row TypeErr
  • 在 SQL 里描述数据分布情况的时候,有 Cardinality 和 Selectivity 两个概念,有什么区别?

    What is the difference between cardinality and selectivity In SQL cardinality refers to the number of unique values in p
  • 分享一波粉丝面试真题-主要是偏管理方面的

    怎么改善团队低迷现状 改善团队低迷的现状是一个重要的管理挑战 以下是一些可能有助于改善团队状态的方法 深入了解问题 首先 需要了解低迷的原因 这可能涉及与团队成员的个人会谈 收集反馈 观察工作流程等 明确问题的性质对于采取适当的措施至关重要
  • 使用python批量将svg转换成PNG

    CairoSVG介绍 CairoSVG是一个将SVG转为PNG PDF PS格式的库 当前版本的CairoSVG至少需要Python 3 5以上版本 CairoSVG安装和使用 pip install cairosvg 通过命令行你就可以使
  • 数据结构课设:学生信息管理系统(完整版)

    系统介绍 学生信息管理系统是针对学校人事处的大量业务处理工作而开发的管理软件 主要用于学校学生信息管理 总体任务是实现学生信息关系的系统化 科学化 规范化和自动化 其主要任务是用计算机对学生各种信息进行日常管理 如查询 修改 增加 删除 另
  • HTTP协议和web工作原理

    HTTP协议 是web学习的核心 学东东切忌只学配置 不学原理 只学会框架有什么用 要会自己写框架 web学习直接关系到J2EE的学习一 HTTP 超文本传输协议 人类之所发展得如此快 就是因为有自己的语言 1 所谓超文本 即纯文本语言 不
  • 使用git push太慢怎么办

    使用git push太慢怎么办 修改host文件 windows 的路径应该在 C Windows System32 drivers etc hosts 在host文件的最后一行加上 151 101 72 249 github global
  • 现代密码学之安全多方计算

    Secure Multi Party Computation 什么是Secure Multiparty Computation 安全定义 Ideal real model Oblivious transfer OT 1 out of 2 s
  • 拓撲排序學習

    确定比赛名次 Problem Description 有N个比赛队 1 lt N lt 500 编号依次为1 2 3 N进行比赛 比赛结束后 裁判委员会要将所有参赛队伍从前往后依次排名 但现在裁判委员会不能直接获得每个队的比赛成绩 只知道每
  • connection ftp refused_ftp: connect: Connection refused 解决方法

    redhat下使用ftp出现connection refused报错 通过查询是端口未开启的缘故 以下为解决方法 root localhost vsftpd usr sbin vsftpd 500 OOPS vsftpd does not
  • Flutter 版本更新 和 dart SDK版本跟新

    The current Dart SDK version is 2 19 5 Because pivot chat requires SDK version gt 3 0 0 lt 4 0 0 version solving failed
  • 基于 RxJs 的前端数据层实践

    近来前端社区有越来越多的人开始关注前端数据层的设计 DaoCloud 也遇到了这方面的问题 我们调研了很多种解决方案 最终采用 RxJs 来设计一套数据层 这一想法并非我们的首创 社区里已有很多前辈 大牛分享过关于用 RxJs 设计数据层的
  • 通过C实现sqlite3操作,(增删改查),导入电子词典

    一 插入 include
  • Tesseract-OCR下载和安装

    Y26 Tesseract 一款由HP实验室开发由Google维护的开源OCR Optical Character Recognition 光学字符识别 引擎 与Microsoft Office Document Imaging MODI
  • uni-app从入门到上天视频教程 23讲 我终于卷完了

    大家好 我是锋哥 祝大家新年快乐 过年走亲访友 休息了几天 今天把uni app课程卷完了 23讲 免费基础课程 uni app技术介绍 uni app 是一个使用 Vue js 开发所有前端应用的框架 开发者编写一套代码 可发布到iOS
  • STM32之舵机转动————寄存器版

    以STM32F407VGT6单片机为例 控制舵机转动的角度0 180 include pwm h 函数名 tim3 ch4 pwm 函数功能 舵机配置 返回值 void 形参 void 函数说明 红色线 5V 棕色线 GND 橘色线 PB1
  • java.lang.manament API 简介

    java lang management 包提供管理接口用于监控以及管理 JVM 以及 Java 运行时的其他组件 我们开发的 JVM Agent 就是通过这个包提供的接口 收集到 JVM 中包括内存 GC 线程在内的信息 java lan
  • 《JAVA核心知识》学习笔记(JVM)-1

    JVM 1 基本概念 JVM 是可运行 Java 代码的假想计算机 包括一套字节码指令集 一组寄存器 一个栈 一个垃圾回收 堆 和 一个存储方法域 JVM 是运行在操作系统之上的 它与硬件没有直接 的交互 Hotspot JVM 后台运行的
  • Android 实现ListView 文字+ 图片

    1 ListView item 布局