Android Example [B4X] RSS Viewer using xCustomListView

After having used the RSS Viewer library in the past, and now finding that it won't function with my secure sites, I decided to start with Erel's XUI CustomListView example and then integrate that with using the XML2MAP library to write a RSS viewer. The attached example is for B4A, but it would probably be easy enough to adapt to b4i as well.

One thing that I do that the RSS viewer library did not do, is dynamically adjust the card size based on the amount of text content. This example also has a browser activity that will load the website URL and allow the user to share the link.

Edit: Updated on 2/19/2019 for better handling of panel resizing.



  • RSS
    20.7 KB · Views: 457
Last edited:


hi @Jack Cole i use b4a v 9.8 .
i want to use this source but i cant find lable extras lib
this lib is a internal lib and i think that remove from internal lib in new version b4a!


Active Member
Licensed User
unfortunately i tried to run the code but i got the following error
Logger connected to: Xiaomi Redmi Note 5A Prime
--------- beginning of main
Copying updated assets files (17)
*** Service (starter) Create ***
** Service (starter) Start **
** Activity (main) Create, isFirst = true **
** Activity (main) Resume **
*** Service (httputils2service) Create ***
** Service (httputils2service) Start **
Error occurred on line: 24 (Xml2Map)
org.apache.harmony.xml.ExpatParser$ParseException: At line 2, column 0: XML or text declaration not at start of entity
at org.apache.harmony.xml.ExpatParser.parseFragment(
at org.apache.harmony.xml.ExpatParser.parseDocument(
at org.apache.harmony.xml.ExpatReader.parse(
at org.apache.harmony.xml.ExpatReader.parse(
at anywheresoftware.b4a.objects.SaxParser.parse(
at anywheresoftware.b4a.objects.SaxParser.Parse(
at b4a.example.xml2map._parse2(
at b4a.example.xml2map._parse(
at b4a.example.main._parserssandloadtocustomlistview(
at b4a.example.main$ResumableSub_FillList.resume(
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Native Method)
at anywheresoftware.b4a.ShellBA.raiseEvent2(
at anywheresoftware.b4a.BA.raiseEvent(
at anywheresoftware.b4a.BA.checkAndRunWaitForEvent(
at anywheresoftware.b4a.ShellBA.raiseEvent2(
at anywheresoftware.b4a.BA$
at android.os.Handler.handleCallback(
at android.os.Handler.dispatchMessage(
at android.os.Looper.loop(
at java.lang.reflect.Method.invoke(Native Method)