(原创)【B4A】一步一步入门08:ListView,列表、单行、双行、双行带图片、列表项样式(控件篇04)
一、前言
本篇教程,我们来讲一下常用的控件: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)的更多相关文章
- 一步一步学android之控件篇——ScrollView
一个手机的屏幕大小是有限的,那么我要显示的东西显示不下怎么办?这就会使用到ScrollView来进行滚动显示,他的定义如下: 可以看到ScrollView是继承于FrameLayout的,所以Scro ...
- openlayers4 入门开发系列之地图导航控件篇(附源码下载)
前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...
- 一步一步学android之控件篇——ListView基本使用
ListView组件在应用程序中可以说是不可或缺的一部分,ListView主要是显示列表数据,同时可以滚动查看,这篇博客主要是对ListView的基本用法进行说明,后面会依次对ListView点击动态 ...
- vs2015c++/MFC入门知识全集/实例规范书籍视频下载孙鑫c++对话框计算器基础控件使用教程系列
VIP教程可免费看.可免费下载前部分试看教程地址:http://dwz.cn/4PcfPk免费下载地址:http://dwz.cn/mfc888 本课程目录 67章 [MFC项目开发第01天]Wind ...
- [C#] (原创)一步一步教你自定义控件——04,ProgressBar(进度条)
一.前言 技术没有先进与落后,只有合适与不合适. 本篇的自定义控件是:进度条(ProgressBar). 进度条的实现方式多种多样,主流的方式有:使用多张图片去实现.使用1个或2个Panel放到Use ...
- (原创)[C#] 一步一步自定义拖拽(Drag&Drop)时的鼠标效果:(一)基本原理及基本实现
一.前言 拖拽(Drag&Drop),属于是极其常用的基础功能. 无论是在系统上.应用上.还是在网页上,拖拽随处可见.同时拖拽时的鼠标效果也很漂亮,像这样: 这样: 还有这样: 等等等等. 这 ...
- 一步一步实现listview加载的性能优化
listview加载的核心是其adapter,本文针对listview加载的性能优化就是对adpter的优化,总共分四个层次: 0.最原始的加载 1.利用convertView 2.利用ViewHol ...
- 一步一步学Silverlight 2系列(31):图形图像综合实例—实现水中倒影效果
概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...
- ActiveReports 报表控件官方中文入门教程 (3)-如何选择页面报表和区域报表
本篇文章将介绍区域报表和页面报表的常见使用场景.区别和选择报表类型的一些建议,两种报表的模板设计.数据源(设计时和运行时)设置.和浏览报表的区别. ActiveReports 报表控件官方中文入门教程 ...
- DataTables 控件使用和心得 (1) - 入门
什么是DataTables DataTables是一个基于HTML/CSS/JavaScript的前端列表组件. 基于JQuery 开源并且免费(除特殊支持服务) 主要特色: 高性能,响应式,功能完整 ...
随机推荐
- Java-Excel表数据转List对象->导入数据库
1 import java.io.File; 2 import java.io.FileInputStream; 3 import java.util.ArrayList; 4 import java ...
- Study python_04
数组 a = [1,2,3] print(a) 数组替换 a = [1,2,3] a[0] = 100 print(a) 数组去重复 def delete_chong(): a = [1,1,2,2, ...
- MySQL之char、varchar、text类型
在存储字符串时, 可以使用char.varchar或者text类型, 那么具体使用场景呢? 参考下面这个表结构: 分析 一,char类型 char列的长度固定为创建表时声明的长度.长度可以为从0到25 ...
- MyBatis Plus 设置ID的自增 /非自增时遇到的问题
非自增时 自己设置ID 其他可参考------>主键策略的几种类型 https://blog.csdn.net/hxyascx/article/details/105401767
- vue + antV G6 实现流程图完整代码 (antv G6 流程图)
效果如下: 代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- 基于LabVIEW的计时器
前言: 最近有人问我,怎么实现一个计时器计时,可以做到启动.停止.重新开始等功能,好久没关于LABVIEW的博文,借这个写个计时器相关内容. 一.Labview时间计时器介绍: 这里采用时间计时器计算 ...
- 20200925--矩阵加法(奥赛一本通P93 6 多维数组)
输入两个n行m列的矩阵A和B,输出它们的和A+B 输入: 第1行包含两个整数n和m(1<=n<=100,1<=m<=100),表示矩阵的行数和列数. 接下来n行,每行m个整数, ...
- Jenkins集成appium自动化测试
一,引入问题 自动化测试脚本绝大部分用于回归测试,这就需要制定执行策略,如每天.代码更新后.项目上线前定时执行,才能达到最好的效果,这时就需要进行Jenkins集成. 不像web UI自动化测试可以使 ...
- nodejs批量重命名
const fs = require("fs"); // directory path let config = { affix: null, src: null, }; ...
- Unity 转小游戏
填写appid 和游戏资源位置 在导出的项目里可以修改游戏资源位置 两个目录 minigame 是小程序打开的目录 webgl 是要下载的的资源 下载一个http 服务器就有了 和JS交互 大部分js ...