Android Question CustomListView class and library interchangeable?

Rubsanpe

Active Member
Licensed User
Hello. Is the CustomListView class and library interchangeable? In one project I was using the class until version 1.66 which was the last one published as a class. The latest version included with B4A 7.00 is as a library and is version 1.67.

If I remove the class from the project and include the library, the execution gives me an error, although there is no compiling error.

B4X:
** Activity (main) Create, isFirst = true **
Class not found: com.clarionero.b4a.boletinesoficiales.customlistview, trying: com.clarionero.b4a.boletinesoficiales.customlistview
Error occurred on line: 224 (B4XDrawer)
java.lang.RuntimeException: java.lang.ClassNotFoundException: com.clarionero.b4a.boletinesoficiales.customlistview
   at anywheresoftware.b4a.keywords.LayoutBuilder.loadLayout(LayoutBuilder.java:170)
   at anywheresoftware.b4a.objects.PanelWrapper.LoadLayout(PanelWrapper.java:134)
   at anywheresoftware.b4a.objects.B4XViewWrapper.LoadLayout(B4XViewWrapper.java:292)
   at com.clarionero.b4a.boletinesoficiales.main._activity_create(main.java:831)
   at java.lang.reflect.Method.invokeNative(Native Method)
   at java.lang.reflect.Method.invoke(Method.java:515)
   at anywheresoftware.b4a.shell.Shell.runMethod(Shell.java:732)
   at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:351)
   at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:255)
   at java.lang.reflect.Method.invokeNative(Native Method)
   at java.lang.reflect.Method.invoke(Method.java:515)
   at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:144)
   at com.clarionero.b4a.boletinesoficiales.main.afterFirstLayout(main.java:107)
   at com.clarionero.b4a.boletinesoficiales.main.access$000(main.java:20)
   at com.clarionero.b4a.boletinesoficiales.main$WaitForLayout.run(main.java:85)
   at android.os.Handler.handleCallback(Handler.java:733)
   at android.os.Handler.dispatchMessage(Handler.java:95)
   at android.os.Looper.loop(Looper.java:136)
   at android.app.ActivityThread.main(ActivityThread.java:5019)
   at java.lang.reflect.Method.invokeNative(Native Method)
   at java.lang.reflect.Method.invoke(Method.java:515)
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
   at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: com.clarionero.b4a.boletinesoficiales.customlistview
   at java.lang.Class.classForName(Native Method)
   at java.lang.Class.forName(Class.java:251)
   at java.lang.Class.forName(Class.java:216)
   at anywheresoftware.b4a.keywords.LayoutBuilder.loadLayoutHelper(LayoutBuilder.java:390)
   at anywheresoftware.b4a.keywords.LayoutBuilder.loadLayoutHelper(LayoutBuilder.java:454)
   at anywheresoftware.b4a.keywords.LayoutBuilder.loadLayout(LayoutBuilder.java:148)
   ... 23 more
Caused by: java.lang.NoClassDefFoundError: com/clarionero/b4a/boletinesoficiales/customlistview
   ... 29 more
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.clarionero.b4a.boletinesoficiales.customlistview" on path: DexPathList[[zip file "/data/app/com.clarionero.b4a.boletinesoficiales-1.apk", zip file "/data/data/com.clarionero.b4a.boletinesoficiales/code_cache/secondary-dexes/com.clarionero.b4a.boletinesoficiales-1.apk.classes2.zip"],nativeLibraryDirectories=[/data/app-lib/com.clarionero.b4a.boletinesoficiales-1, /system/lib]]
   at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
   ... 29 more
** Activity (main) Resume **

¿i must remake the activities layouts for use the last library version or is availlable the last version as a class?

Thank you


Rubén
 

DonManfred

Expert
Licensed User
must remake the activities layouts for use the last library version or is availlable the last version as a class?
Yes, you need to remake the Layouts if you switch from class to library (or from library to class. Open the layout, remove the CLV, add it again using the same name, save the layout.
 
Upvote 0

Rubsanpe

Active Member
Licensed User
Thank you, although it is not a single activity, I should make the change in at least 6 of them. Will CustomListView updates always be made already as a library?

Thank you.

Rubén
 
Upvote 0
Top