B4A Library [Lib] CoverFlow v2.0

Hi guys, as I have promised, CoverFlow is here.

Download the Coverflow.zip

The zip contains the library and an example that´s all


The CoverFlow Class = Neil Davies




B4ACoverFlow
Author:
Giuseppe Salvi
Version: 2
  • PhotoFlow
    Events:
    • ItemClick (Position As Int, Value As Object)
    • ItemLongClick (Position As Int, Value As Object)
    • ItemSelected (Position As Int, Value As Object)
    Methods:
    • AddImage (Dir As String, FileName As String)
      Add an image at the end of the PhotoFlow from sdcard or AssetsDir
      Example:
      PhotoFlow.AddImage(File.DirRootExternal,"a.jpg")
    • AddImageAt (index As Int, Dir As String, FileName As String)
      Add an image to the desired position in the PhotoFlow from sdcard or AssetsDir
      Example:
      PhotoFlow.AddImage(1,File.DirRootExternal,"a.jpg")
    • BringToFront
    • ClearCache
      Delete entire disk and memory cache created before
    • GetImageListFromAssets (path As String) As List
      Get entire list of images stored in assets folder
      Examples:
      Dim lv as ListView
      Dim l as list
      l.Initialize
      lv.Initialize("lv")
      Sub Menu_Click
      Activity.AddView(lv,0,0,100%x,100%y)
      l = Coverflow.GetImageListFromAssets("Here the Images path u've in assets")
      For n = 0 To l.Size-1
      lv.AddSingleLine(l.Get(n))
      next
      End Sub
    • GetItem (position As Int) As String
      Returns Item
      Example:
      i.Bitmap=LoadBitmap("",PhotoFlow.GetItem(Position))
    • InitializeCarousel (EventName As String)
      Initialize the Carousel
    • InitializeCoverflow (EventName As String)
      Initialize the PhotoFlow
    • IsInitialized As Boolean
    • PopulatePhotoFlow (dir As String, path As String)
      Populate PhotoFlow from sdcard not from assets
    • PopulatePhotoFlowFromAssets (path As String)
      Populate CoverFlow from assets not from sdcard
    • RemoveView
    • SendToBack
    • SetBackgroundImage (arg0 As Bitmap)
    • SetLayout (arg0 As Int, arg1 As Int, arg2 As Int, arg3 As Int)
    Permissions:
    • android.permission.WRITE_EXTERNAL_STORAGE
    Properties:
    • AnimationDuration As Int [write only]
      Sets how long the transition animation should run when a child view changes position.
    • Carousel As Boolean [write only]
      Set as Carousel
    • Color As Int [write only]
    • CreateCache As String [write only]
      Sets the name of your own cache
      Examples:
      PhotoFlow.CreateCache = "Your cache Name Here")
      It'll create a cache in "Android/data/Your cache name/cache/.thumbs" in to SdCard
    • Enabled As Boolean
    • FadingEdgeLength As Int [write only]
      Set the size of the faded edge used to indicate that more content in this view is available.
    • Height As Int
    • ItemHeight As Int
      Get or Set ItemHeight
    • ItemWidth As Int
      Get or Sets ItemWidth
    • Left As Int
    • Length As Int [read only]
      Returns lenght
    • Reverse As Boolean [write only]
      Set reverse
    • Selection As Int [write only]
      Jump directly to a specific item in the adapter data.
    • ShowText As Boolean
      Get or Sets the visibility of the text - by default is hide
    • Spacing As Int [write only]
      Sets the spacing between items in a Gallery
    • Tag As Object
    • TextColor As Int
      Get or Sets Text Color - by default is White
    • TextSize As Int
      Get or Sets Text size
    • Top As Int
    • Version As String [read only]
      Return Author and Version of this library
    • Visible As Boolean
    • Width As Int
 

Attachments

  • coverflow.jpg
    coverflow.jpg
    83.8 KB · Views: 2,463
  • coverflow2.jpg
    coverflow2.jpg
    81.1 KB · Views: 2,254
  • CoverFlow with Text.jpg
    CoverFlow with Text.jpg
    115.6 KB · Views: 1,662
  • B4ACoverFlow v.1.70.zip
    36.2 KB · Views: 550
  • B4ACoverFlow v.1.80.zip
    40.2 KB · Views: 549
  • B4ACoverFlow v2.0 fix.zip
    40.6 KB · Views: 1,163
Last edited:

GMan

Well-Known Member
Licensed User
Longtime User
TOP-Lib :sign0087:
 

lonleystar

Well-Known Member
Licensed User
Longtime User
Hi there, the lib is not working for me, it keeps crashing with THIS error on line #29 in your demo:
B4X:
Carousel.PopulateCoverflow(File.DirRootExternal, "SamplePicture.jpg")
Hi NJDUde,

U have to populate not with 1 image but whit more.

I just test it with 860 images and it work.
 

NJDude

Expert
Licensed User
Longtime User
I see, well, then I suggest you change this line on the demo to make it clear:

From:
B4X:
Carousel.PopulateCoverflow(File.DirRootExternal, "Images2")
To:
B4X:
Carousel.PopulateCoverflow(File.DirRootExternal, "<YOUR_PICTURES_DIRECTORY>")
 

lonleystar

Well-Known Member
Licensed User
Longtime User
I see, well, then I suggest you change this line on the demo to make it clear:

From:
B4X:
Carousel.PopulateCoverflow(File.DirRootExternal, "Images2")
To:
B4X:
Carousel.PopulateCoverflow(File.DirRootExternal, "<YOUR_PICTURES_DIRECTORY>")
Hi NJDude,

Sorry I forgot to change this line.
 

clarionero

Active Member
Licensed User
Longtime User
Hi. How can i show the images with the correct aspect radio? My images have ever same size, and they are streched.

Thank you.
 

Rorry

Member
Licensed User
Longtime User
Hi everyone,
is it possible to add an image hosted on a server to the coverflow gallery but "on the fly"? without downloading to a folder.

thanks
 

neoevoman

New Member
Licensed User
Longtime User
Hi everyone,
is it possible to add an image hosted on a server to the coverflow gallery but "on the fly"? without downloading to a folder.

thanks
I am thinking the same way as Rorry. It would be wonderfull to select the how to populate the coverflow: SD or an array. Anyway this library is awsome!.
 

Rorry

Member
Licensed User
Longtime User
i agree with you,this library is just awesome :) gives an impressive side to your app. i decided to download files in a folder before populating the gallery but it's a bit too long.

So,no other choice than adding this function in java to the original project of neil davies then compile it for B4A.
 

socialnetis

Active Member
Licensed User
Longtime User
Hi Lonelystar, very nice lib, works perfect for me!
Just a small sugestion, use "CENTER_INSIDE" or "FIT_INSIDE" instead of "FIT_XY", this will maintain the aspect ratio of the images, and will make the coverflow more dynamic to use different sizes of images
 

luke2012

Well-Known Member
Licensed User
Longtime User
Hi @lonleystar!
I'm using your library with satisfaction in a new app that I developing and it works fine (Main activity).
I'm trying to use the library within an esxisting project with multiple activities module.

The problem :
I'm using the cover flow object within an activity that is different from the "Main" but the cover flow interface doesn't show without any warning message (the PopulateCoverflow do nothing in this case.)
There is some limitation using this object in activities that are not the Main activity ?
 
Top