delphi xe5 android listview,Delphi XE6学习笔记(2)FMX.TListView的基本用法
FMX的ListView,可以呈现各种类型的Item,经测试,其用户体验程度,已经达到原生ios应用的水平。下图,是ListView呈现的各种样式,当把TListView放到Form上,设置ItemAppearance属性,就能得到这样的效果了。ItemAppearance的值不同,Item的属性值会随之变化,主要是以下几项:Item.Text:Item左侧显示的标题Item.Bitmap:左侧显
FMX的ListView,可以呈现各种类型的Item,经测试,其用户体验程度,已经达到原生ios应用的水平。下图,是ListView呈现的各种样式,当把TListView放到Form上,设置ItemAppearance属性,就能得到这样的效果了。
ItemAppearance的值不同,Item的属性值会随之变化,主要是以下几项:
Item.Text:Item左侧显示的标题
Item.Bitmap:左侧显示的图标
Item.ButtonText:右测按钮显示的标题
Item.Detail:右侧显示的详细内容
有两种方式给ListView传递数据,一种是代码方式填加,下面用代码演示:
var
LItem:
TListViewItem;
I:
Integer;
begin
ListView1.BeginUpdate;//提高效率
try
for I := 1
to 10 do
begin
LItem :=
ListView1.Items.Add;
LItem.Text :=
IntToStr(I);
end;
finally
ListView1.EndUpdate;
end;
end;
另一种是利用binding,完全可视化的方式。放置一个TProtoTypeBindSource,为其增加几个Field,然后利用右键bind
Visually,即binding可视设计器,将Field联接到item的Text等属性。如图:
ProtoTypeBindSource,为我们准备好了测试数据,这样即时得到了运行期才能看到的结果,EMB现在真是太贴心了。你不觉得?反正我是有些微微的感动,几颗清泪差动没下来,现在的好人不多啊。
删除一条项目
用过iphone都知道,提供的通话记录,横向划动一条内容,就会在右侧出现一个红色的删除按钮,用这个按钮就可以把当前这条内容删除掉。想当初被这个功能惊叹过,Apple真有创意,万万没想到啊,今天咱也可以轻松实现了。
ListView提供了一个属性:CanSwipeDelete,默认为True,即ListView默认就支持划动删除了!还有对应一个事件,OnDeleteItem,有个参数AIndex:
procedure TForm1.ListView1DeleteItem(Sender: TObject;
AIndex: Integer);
begin
listview1.Items.Delete(AIndex);//不要在这里再删除了
end;
在这里,我犯了个错误,就是在事件中执行了:
ListView1.Items.Delete(AIndex),结果,一删除就删除二条内容。原来,ListView已经做了删除,不用咱再费心了!
好了,先写到这,想起一休:休息、休息...
更多推荐
所有评论(0)