Sorry, but I have bad news.
The Class doesn’t work with B4J nor with B4i, see below.
I had a look at your project.
Some comments :
1. I set the latest Android version in the ManifestEditor.
This is only for Android.
2. I removed the Phone libray, which is not used.
This is only for Android.
3. The Class doesn’t work with B4J nor with B4i.
3a. The getPadding property exist only in B4A, this will need conditional compilation.
You don’t need a JavaObject anymore for padding, Labels and Buttons have a Padding property.
From the help :
Label.Padding
Property
Readable As Int()
Writeable As Int()
Gets or sets the view's padding (distance between border and content).
The data is stored in a 4 element array with the following values: left, top, right and bottom.
Make sure to use 'dip' units when setting the padding.
Example: Button1.Padding = Array As Int (30dip, 10dip, 10dip, 10dip)
3b. StateListDrawable does exist only in B4A.
3c. In the MsgBoxC you use Activity as a parameter, Activity does exist only in B4A.
3d. For views and other objects like Font or Bitmap, you should use B4X objects, what you partly did.
In B4J the Bitmap object doesn’t exist it’s called Image, you should use B4XBitmap.
For Fonts, you should use B4XFont.
3e. Etc
To make the class B4X XUI cross platform compatible it needs some work.
One suggestion, use B4J and look at the errors showing the differences.