B4i (iOS) - Updates thread

JohnCody wrote : "Accordingly, since there is a 99% chance that any user of B4i will also be developing the SAME app in B4A, please make it a priority so that we can shareALL the code files between the two environments AS-IS."

"Pragma" or "compiler directive" can be used to check the environment which the application is running. This way programmer can code the differences between OSs.

Code: Copy
#if $ANDROID then
    do this way
#elseif $IOS then
    do that way
#end if
 
- Your new "Shared Modules" feature to allow the use of the same code files in either IDE
- Conditional Compilation & Build Configurations to allow different sections of code to compile just for their respective platform/IDE.
Both of these features will be supported.
 
Hi JohnCody,

This is a really nice dream, but sadly, impossible to have 100% compatibility.

Android and IOS has many differences, and B4A/B4i, are not as high-level languajes to alow this portability.

I´m Sure Erel its going to do his best effor for giving us the most compatibility possible in the core comands, but for example, in B4A you have to deal with the lifecicle of the app, in IOS its completly diffeerent, so, you cant have the exact same code.

In the other hand, all my apps in B4A use external libs. Unles the author of the lib makes a version for IOS with the exact same methods and properties, it will break the existing code. :(
 
Of course B4i will not be 100% compatible with B4A, you will not be able to load a B4A project (apk) directly in an iPhone!

But you will use the same language basic-like, the same kind of IDE and Designer (very similar, I guess).

However, do not forget that Erel is an alien, then he will surely surprise us.
 
Last edited:
Of course B4i will not be 100% compatible with B4A, you will not be able to load a B4A project (apk) directly in an iPhone!

But you will use the same language basic-like, the same kind of IDE and Designer (very similar, I guess).
Both statements are correct. In the first version there will probably won't be support for designer scripts.
 
Network (TCP) based chat application:

SS-2014-09-10_10.38.01.png


upload_2014-9-10_10-38-41.png


The nice thing about this chat app is that the communication code is implemented in a shared class. Both the B4A project and the B4i project use the exact same class.
 
I suppose that the first ugly pic is an iOS :D

Just the opposite. It really points out how clean the iOS interface and aesthetic is which may be a challenge for those who will not take the time to read up on iOS user interface guidelines.

iOS has a mandate to eliminate all guesswork on what an interface element is supposed to do. For example to a first time Android user in the above example it is not immediately apparent that a text box can be used for input as all the newbie sees is the baseline with tiny upturned corners.
 
In fact, I don't like the look of the EditText post api 13.

My (mock) question was to ask a confirm that I had got it right, that these were the first tests of b4i (but Erel did not liked my comment :)).

I do not like Apple in general and I think that this rivalry between Android and iOS is a very common feeling.
 
The trick is to get more comfortable writing objects which should be 'uncoupled' that is they stand alone and don't have any specifics like UI code in them.
Then you can use the same objects in each of the different environments as Erel points out in his post above.
 
  • Like
Reactions: eps
Hi Erel,

- are you going to support the native interface on iOS or the controls will be custom?
- how will we be designing the user interface?
 
are you going to support the native interface on iOS or the controls will be custom?
All the controls are native.

how will we be designing the user interface?
Similar to B4A. The designer is made of three components: the properties window, abstract designer and the WYSIWYG designer which is running on the device.
 
It's looking good Erel. I'm kinda bummed that I bought a Macbook & taught myself Objective-C before you announced B4i... o_O
 
Back
Top