procedure TAndroidModule1.CreateGallery;
var
i : integer;
//top : integer;
//left : integer;
num_col : integer;
space_col : integer;
begin
num_col := 3;
space_col := 4;
//top := 0;
//left := 0;
for i := 0 to Length(GalleryBmp)-1 do
begin
GalleryBmp[i].Free;
GalleryBmp[i] := nil;
GalleryImages[i].Free;
GalleryImages[i] := nil;
end;
SetLength(GalleryBmp,0);
SetLength(GalleryImages,0);
for i:=0 to Self.jImageList1.Count-1 do
begin
SetLength(GalleryBmp, Length(GalleryBmp)+1);
GalleryBmp[Length(GalleryBmp)-1] := jBitmap.Create(Self);
GalleryBmp[Length(GalleryBmp)-1].Name := 'jBitmap' + IntToStr(i+1);
GalleryBmp[Length(GalleryBmp)-1].Images := Self.jImageList1;
GalleryBmp[Length(GalleryBmp)-1].ImageIndex := i;
SetLength(GalleryImages, Length(GalleryImages)+1);
GalleryImages[Length(GalleryImages)-1] := jImageView.Create(Self.jScrollView1);
GalleryImages[Length(GalleryImages)-1].Name := 'jImageView' + IntToStr(i+1);
GalleryImages[Length(GalleryImages)-1].Parent := Self.jScrollView1;
//GalleryImages[Length(GalleryImages)-1].Top := top;
//GalleryImages[Length(GalleryImages)-1].Left := left;
if i > 0 then
begin
GalleryImages[Length(GalleryImages)-1].Anchor := GalleryImages[Length(GalleryImages)-2];
if ((i mod num_col) = 0) and (i>0) then
begin
GalleryImages[Length(GalleryImages)-1].PosRelativeToAnchor := [raBelow];
GalleryImages[Length(GalleryImages)-1].PosRelativeToParent :=[rpLeft];
end else begin
GalleryImages[Length(GalleryImages)-1].PosRelativeToAnchor := [raAlignBaseLine];
end;
end else begin
GalleryImages[Length(GalleryImages)-1].PosRelativeToParent :=[rpTop, rpLeft];
end;
GalleryImages[Length(GalleryImages)-1].Width := Trunc(Self.jScrollView1.Width / num_col);
GalleryImages[Length(GalleryImages)-1].Height := GalleryImages[Length(GalleryImages)-1].Width;
GalleryImages[Length(GalleryImages)-1].ImageScaleType := scaleCenter;
GalleryImages[Length(GalleryImages)-1].Enabled := true;
GalleryImages[Length(GalleryImages)-1].Visible := true;
//GalleryImages[Length(GalleryImages)-1].Tag := i;
//GalleryImages[Length(GalleryImages)-1].OnClick := ClickMiniatura;
GalleryImages[Length(GalleryImages)-1].SetImageBitmap(GalleryBmp[Length(GalleryBmp)-1].GetResizedBitmap(GalleryImages[Length(GalleryImages)-1].Width, GalleryImages[Length(GalleryImages)-1].Height));
GalleryImages[Length(GalleryImages)-1].Refresh;
GalleryImages[Length(GalleryImages)-1].Invalidate;
{if ((i mod num_col) = 0) and (i>0) then
begin
left := 0;
top := top + GalleryImages[Length(GalleryImages)-1].Height + space_col;
end else begin
left := left + GalleryImages[Length(GalleryImages)-1].Width + space_col;
end;}
end;
Self.jScrollView1.Invalidate;
end;