B4A Library [B4X] [XUI] AS Scrolling Tags based on xCustomListView - Display your Hashtags or Categories

I spend a lot of time in creating views, like this and to create a high quality view cost a lot of time. If you want to support me and further views, then you can do it here by Paypal. :)

Without scroll alternative:

B4j: jXUI,xCustomListView
B4a: XUi,xCustomListView
B4i: iXUI,xCustomListView
Screenshot_20201013-151952.jpg
ezgif.com-resize.gif


ASScrollingTags
Author: Alexander Stolte
Version: 1.00

  • ASST_LabelProperties
    • Fields:
      • IsInitialized As Boolean
        Tests whether the object has been initialized.
      • TextAlignment_Horizontal As String
      • TextAlignment_Vertical As String
      • TextColor As Int
      • xFont As B4XFont
    • Functions:
      • Initialize
        Initializes the fields to their default value.
  • ASScrollingTags
    • Events:
      • ItemClick (Index As Int, Value As Object)
      • ItemLongClick (Index As Int, Value As Object)
    • Fields:
      • mBase As B4XView
      • Tag As Object
    • Functions:
      • AddTag (text As String, background_color As Int, Value As Object) As String
      • Class_Globals As String
      • DesignerCreateView (Base As Object, Lbl As Label, Props As Map) As String
        Base type must be Object
      • GetBackgroundAt (index As Int) As B4XView
      • getCLV As b4a.example3.customlistview
      • GetLabelAt (index As Int) As B4XView
      • getLabelProperties As ASST_LabelProperties
        change the label properties, call it before you add tags
        <code>ASScrollingTags1.LabelProperties.xFont = xui.CreateDefaultBoldFont(15)</code>
      • Initialize (Callback As Object, EventName As String) As String
      • IsInitialized As Boolean
        Tests whether the object has been initialized.
    • Properties:
      • CLV As b4a.example3.customlistview [read only]
      • LabelProperties As ASST_LabelProperties [read only]
        change the label properties, call it before you add tags
        <code>ASScrollingTags1.LabelProperties.xFont = xui.CreateDefaultBoldFont(15)</code>
Changelog
  • 1.00
    • Release
  • 1.01
    • BugFix - labels with different heights
Have Fun :)
 

Attachments

  • AS ScrollingTags Example.zip
    10.7 KB · Views: 282
  • ASScrollingTags.b4xlib
    2.4 KB · Views: 263
Last edited:

CryoGenID

Active Member
Licensed User
Longtime User
Alexander, this is really great!
I had been searching for a solution to display tags/chips but "tags" is a problematic word to search for as it has many meanings ;-)

Do you also have a "non-scrolling" way of creating tags (multiline if there are many tags) and preferably on demand with an "X" so that the user can also delete the tags in the UI?

Thanks so much :)

Best regards,

Chris
 

CryoGenID

Active Member
Licensed User
Longtime User
Really? That would be awesome ;-)
I try to achieve s.th. like this for B4i, B4A and B4J:
1649863399972.png

So that I can display 1..n elements as tags/chips and (if the UI is in edit mode) remove some by clicking on the "X" (so the "X" shouldn't always be there)...
And if I have more elements than fit into one row/line it should get multiline...

Do you think we (or to be exact you ;-) ) could make that work?

Thanks a LOT for your help in advance!

Best regards,

Chris
 

Alexander Stolte

Expert
Licensed User
I try to achieve s.th. like this for B4i, B4A and B4J:
1649863399972.png
This was actually planned for this library, but I didn't continue the project where I had used it, so I didn't need it and nobody had asked for it yet.

Do you think we (or to be exact you ;-) ) could make that work?
easy :)
 

CryoGenID

Active Member
Licensed User
Longtime User
Oh I am sooooo excited :)

Thanks a lot!

Looking forward to updates to this great lib :)

Best regards,

Chris
 

CryoGenID

Active Member
Licensed User
Longtime User
Hello Alexander,

that already looks great! :)
Can't wait ;-) ;-)

Thanks again for your help and support!

Best regards,
Chris
 

Alexander Stolte

Expert
Licensed User
Viel Spaß ;)
 
Top