This issue is not an Android 4 issue. It happens in all Android versions.
The problem is that B4A creates a non scalable layout (it uses AbsoluteLayout with fixed positions and sizes for the views).
If you want to fix it you have to modify the generated xml files in Objects\res\layout and Objects\res\xml. But be aware that you need knowledge of how widgets work in Android and how to create layouts in XML. It is not really easy to understand completely.
The layout file B4A creates is very limited. You can not use variants or designer scripts. The problem is that it is not possible to get the widget cell size and even on the same device the cell size can vary depending on the launcher used.
My
WorldClock example uses the scaling feature though it was not the main reason I created this example. The clock widget should scale properly on all devices and screen sizes but the example is quite complicated because it even shows how to completely change a widget layout.