Is ICS "really" going to fix / assist or solve our variant and layout problems? Should I now spend time working on layouts for every size of device or concentrate on the business rules which have nothing to do with the GUI?
ICS is out now... looks funky, did anyone read or hear if the screen variant was addressed ?
1280 x 720, I got is the native resolution for ICS 4.0. I believe this theoretically means we can all develop for this resolution and ICS will take care of our screen size and "dip" situations for us ??? hopefully :sign0161:
Nope. From the docs on the Android site it "includes all of the familiar Android 3.x interface elements and APIs" on all platforms. It's actually got a bit more complicated with Fragments that are a sort of sub-activity and lots of new screen related manifest settings for developers to tune things and there are now five density settings, 120, 160, 240, 320 and an odd 213 meant for TVs. Read about it at Android 3.2 Platform | Android Developers
I haven't got my head round all this screen stuff and I'm quite happy that it's Erel who will have to map all that onto Basic4android and not me! As Jim pointed out above it's going to be quite a while before ICS becomes a significant significant proportion of the installed Android fleet.
It's actually got a bit more complicated with Fragments that are a sort of sub-activity and lots of new screen related manifest settings for developers to tune things and there are now five density settings, 120, 160, 240, 320 and an odd 213 meant for TVs.
The designer of B4A is really great and it is easy to create different layout variants with it but I think it is hard to create felxible GUIs which will run on all available resolutions. The problem is that all B4A layouts are based on the (deprecated) AbsoluteLayout. I think we need support for other layouts like the RelativeLayout in the future. Support for the other layouts is perhaps possible with a custom library but then this will not work in the designer. I'm shure Erel will find a solution for this in the future.
B4A layouts are similar but are not exactly like AbsoluteLayouts.
In most cases relative layouts are not simpler to get correctly. Many developers are having difficulties to build the UI correctly with these layouts.
Android resources are separated based on the resolution and scale (similar to the variants). You cannot expect the same layout to look correctly on a small phone and a large tablet.
Most applications should use three variants: phone, 7' tablet and 10' tablets.
If you want to support both orientations than you need another three.
With these variants your application will look quite good on all devices. Creating variants is simple and quick, especially with the new abstract designer.
Well, time to start practising with the new designer. It seems to me that if one wants to develop apps to fit most screens and densities - start with high density and work towards the lower. This way, you will be able to access the views and resize them. Erel does state the the new designer has addressed this issue.