I can see were you want to go with your comment but you are expressing it rather poorly.
B4A targets Android devices, B4i targets iOS devices, and B4J targets Java able devices...
The code produce in either of these 3 platforms is 80% to 90% reusable across the other platforms... so why not 100% (this is what you are indeed questioning)
Well, Android has views/controls that are non-existing in Android or Java enabled devices, and the same is true for any of the remaining 2 platforms.
Eventually, a unified IDE will be in the next evolutionary steps of B4X, but that will not exclude the need for the programmer to adapt the code for the targeted device;
Plus, due to the fact that the targeted hardware is in constant evolution, and so is the underlying OS (one pushes the other to evolve) B4X tries to keep up with those changements, and sometimes, as we see with B4A, even stays one step ahead of the upcoming requirements, so that developers can adapt before it becomes mandatory.
So, to answer you question.... Using B4X, and B4XViews ans much as possible, you will have a code base that will be reusable nearly 90% by any of the B4X suite IDE's BUT, there are specificities that, at least for now, prevent the use of a single IDE to create code to all platforms....
There is, however, one particular feature that passes by almost unnoticed... you can use code blocks targeting any other IDE from your current IDE, by using the #if blocks.
like if you are coding in B4J and you put...
#If B4A
'put B4A code here
#end if
#If B4i
' put B4I code here
#end if
Your code will still be compiled for Java enabled devices, but the #if B4... block will not be parsed... but this will allow you to keep a single "master platform" code file, and still have IDE specific code in it