一、前言

本篇教程,我们来讲一下常用的控件:ListView(列表控件)。

目前官方已经不推荐使用默认的ListView控件,而是推荐另一款功能更强大的ListView:xCustomListView。不过ListView控件仍是自带的默认ListView,在使用上简单方便,多数时候是足够使用的。

相信看完的你,一定会有所收获!

本文地址:https://www.cnblogs.com/lesliexin/p/17238681.html


二、 属性

ListView与前面的控件不一样,属性项很少,只有一个之前没有介绍过的属性:FastScrollEnabled

FastScrollEnabled属性用于控制当列表中的行数过多,拖动列表是否显示快速滚动按钮。

未设置FastScrollEnabled时效果:

已设置FastScrollEnabled时效果:


三、事件

ListView有两个事件:ItemClick和ItemLongClick,分别在点击和长按残表项触发。

其事件有两个参数:Position和Value,分别表示当前点击项的序号和设置的值,具体的后文有讲解。


四、使用

ListView提供了几个常用的方法,可以方便的添加数据。

(一)单行文本

我们使用方法AddSingleLine,即可在列表中添加单行文本的列表项,参数Text即显示的内容。

需要注意的是,ListView同时还提供了AddSingleLine2方法,其仍是单选文本,但是第二个属性ReturnValue即是上面事件的第二个参数Value,这样可以为列表项添加额外的值,在事件时可以直接使用。

而在AddSingleLine中未设置Value的值,所以Value的值等于显示的文本内容。

1,AddSingleLine

代码:

效果:

2,AddSingleLine2

代码:

效果:

(二)双行文本

同理,我们使用方法AddTwoLines(AddTwoLines2)可以添加一个分为两行的列表项,参数Text即第一行内容,参数Text2即第二行文本。

代码:

效果:

(三)双行文本带图片

同理,我们使用方法AddTwoLinesAndBitmap(AddTwoLinesAndBitmap2)可以添加一个分为两行的且带图片的列表项,参数Text即第一行内容,参数Text2即第二行文本,参数Bitmap即显示的图标。

代码:

效果:


五、修改文本、图片显示样式

看了上面的示例,我们发现ListView虽然在使用上比较方便,但是在效果上却太过固定。下面我们来看一下如何修改默认的样式。

(一)修改文本样式

以双行列表为例,其内部是两个Label控件,所以我们只需要取到对应的Label控件,即可像标准的Label控件一样对其进行样式上的修改。

其两个Label在ListView中的命名是Label、SecondLabel。

我们以将两行文本都修改为斜体为例:

代码:

效果:

(二)修改图片样式

图片样式的修改原理同上,图片使用提ImageView控件,内部名称也是ImageVIew,我们取到后就可以去修改其样式。

我们以将图片宽度设置成与ListView控件等宽为例:

代码:

效果:


六、结语

本篇教程介绍了ListView(列表控件)的基本使用方法,以及基础样式的修改。

ListView胜在使用简单,而且样式也中规中矩,可以满足不少时候的需求。

感谢观看,欢迎大家一起学习,共同进步。


-【END】-

(原创)【B4A】一步一步入门08:ListView,列表、单行、双行、双行带图片、列表项样式(控件篇04)的更多相关文章

  1. 一步一步学android之控件篇——ScrollView

    一个手机的屏幕大小是有限的,那么我要显示的东西显示不下怎么办?这就会使用到ScrollView来进行滚动显示,他的定义如下: 可以看到ScrollView是继承于FrameLayout的,所以Scro ...

  2. openlayers4 入门开发系列之地图导航控件篇(附源码下载)

    前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...

  3. 一步一步学android之控件篇——ListView基本使用

    ListView组件在应用程序中可以说是不可或缺的一部分,ListView主要是显示列表数据,同时可以滚动查看,这篇博客主要是对ListView的基本用法进行说明,后面会依次对ListView点击动态 ...

  4. vs2015c++/MFC入门知识全集/实例规范书籍视频下载孙鑫c++对话框计算器基础控件使用教程系列

    VIP教程可免费看.可免费下载前部分试看教程地址:http://dwz.cn/4PcfPk免费下载地址:http://dwz.cn/mfc888 本课程目录 67章 [MFC项目开发第01天]Wind ...

  5. [C#] (原创)一步一步教你自定义控件——04,ProgressBar(进度条)

    一.前言 技术没有先进与落后,只有合适与不合适. 本篇的自定义控件是:进度条(ProgressBar). 进度条的实现方式多种多样,主流的方式有:使用多张图片去实现.使用1个或2个Panel放到Use ...

  6. (原创)[C#] 一步一步自定义拖拽(Drag&Drop)时的鼠标效果:(一)基本原理及基本实现

    一.前言 拖拽(Drag&Drop),属于是极其常用的基础功能. 无论是在系统上.应用上.还是在网页上,拖拽随处可见.同时拖拽时的鼠标效果也很漂亮,像这样: 这样: 还有这样: 等等等等. 这 ...

  7. 一步一步实现listview加载的性能优化

    listview加载的核心是其adapter,本文针对listview加载的性能优化就是对adpter的优化,总共分四个层次: 0.最原始的加载 1.利用convertView 2.利用ViewHol ...

  8. 一步一步学Silverlight 2系列(31):图形图像综合实例—实现水中倒影效果

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  9. ActiveReports 报表控件官方中文入门教程 (3)-如何选择页面报表和区域报表

    本篇文章将介绍区域报表和页面报表的常见使用场景.区别和选择报表类型的一些建议,两种报表的模板设计.数据源(设计时和运行时)设置.和浏览报表的区别. ActiveReports 报表控件官方中文入门教程 ...

  10. DataTables 控件使用和心得 (1) - 入门

    什么是DataTables DataTables是一个基于HTML/CSS/JavaScript的前端列表组件. 基于JQuery 开源并且免费(除特殊支持服务) 主要特色: 高性能,响应式,功能完整 ...

随机推荐

  1. Map 使用

    1.替换map中的某个key Map<String,Object> map = new HashMap<>(); map.put("新key",map.re ...

  2. git 代码托管常用代码

    一.git全局账号登录 (1)全局登录账号和密码 git config --global user.name "xxx" git config --global user.emai ...

  3. mysql安装及可视化界面

    Mysql下载安装 官网下载链接 https://dev.mysql.com/downloads/mysql/ 可以选择之前的版本 我一开始下的8.0.21但安装的时候报错说找不到VCRUNTIME1 ...

  4. 中国人民公安大学 Chinese people’ public security university 网络对抗技术 实验报告4

    中国人民公安大学 Chinese people' public security university 网络对抗技术 实验报告   实验四 恶意代码技术     学生姓名 陈禹 年级 2018 区队 ...

  5. scala流程控制

    1.分支控制if-else 分支控制有三种:单分支.双分支.多分支: 1.1 单分支 (1).语法入下: if(条件表达式){ 执行代码块       //当条件表达式为true时,才会执行代码块内容 ...

  6. 独显坏掉,openSUSE启动黑屏卡死

    我的Dell Vostro 1440配置双显卡,独显是 AMD 的.可能是因为散热的问题,独显烧坏了.原先每次启动都有 openSUSE 的圆形启动动画,显卡烧坏后,启动动画变成三个点. 装 Debi ...

  7. Tacotron2论文阅读笔记

    Tacotron2 NATURAL TTS SYNTHESIS BY CONDITIONING WAVENET ON MEL SPECTROGRAM PREDICTIONS论文阅读笔记 先推荐一篇比较 ...

  8. vue 3.0 引入swiper 8 direction不生效

    需要手动给元素高度  <swiper         class="my-swiper"         :modules="modules"       ...

  9. 如何安装vm虚拟机软件并用该软件建立虚拟机

    一.安装vm虚拟机软件 1.双击打开虚拟机应用程序 找到VM应用程序所在的位置,双击安装 2.根据向导安装 根据提示点击下一步 点击安装之后耐心等待一会,会出现需要输入许可证的的界面,这时候不要关闭界 ...

  10. FII-PRA006/010开发板硬件实验一

    FII-PRA006/010开发板硬件实验一 以一位全加器为例介绍如何利用开发板进行板载实验.一位全加器的Verilog代码如下: 1 2 3 4 5 6 7 8 9 10 module fadd1 ...