Google's approach to documentation has its frustrating points, and to be 
sure, finding the right XML name for the concept/class/value you find in 
the API documentation has always been a frustrating experience. But it 
should not be THAT frustrating.

Also, some of the gaps in concept presentation you complain about in the 
online docs and tutorials are better addressed by the better books on 
Android. My favorite has long  been the Manning Press "Unlocking Android" 
(with slightly different names in different editions), but there are other 
good books, too. Mark Murphy's is quite good too, as is anything by Reto 
Meier.

If you are reluctant to spend $40 or more on a book you are not sure is the 
right one for your needs, Safari Bookshelf now offers many of them through 
your local public library. And Murphy's in older editions (dated, but still 
valuable) are available for free download.

For that matter, if you have the patience to read undocumented code, most 
of these books have the code downloadable for free. You do not have to buy 
the book to find and download the code. But of course, the code is 
explained only in the text, with very sparse comments in the code itself.

The suggestion about ApiDemo is also good, but those tend to demonstrate 
only the very basic elements of how to use the APIs, they leave out a lot 
of details only some of which are in the API documents. Not so long ago, 
people answered questions about such details in all seriousness with "read 
the source code":(

But really: how is all this any worse than in iOS? When I did a small iOS 
project, I had to learn iOS from scratch. At first, I was in awe of how the 
iOS documentation covered important aspects Google had left out of Android, 
but when I actually started trying to apply what I learned there, I found 
out that they too left out a lot of important info. A typical problem I 
found, for example, was that Apple still offers as their most uptodate 
sample code, code that was written under the 3.2 version of Xcode, using 
old APIs no longer recommended, workarounds no longer needed and not even 
using storyboards. Sure, you can let Xcode convert it to a 4.1 project, but 
then what are you learning from the sample code? Certainly not how to 
design the connections between storyboard and callbacks.

So at this point in time, I am convinced that Apple's support of iOS and 
Google's of Android are about equally frustrating. It is just that the 
particular problems are different, such as not having to wait for approval 
before your app goes on the market in Android, but facing arbitrary delays 
with Apple.

On Sunday, August 19, 2012 9:17:51 AM UTC-7, rmz76 wrote:
>
> ... I hate the way UI is handled. Perhaps I will love it once I get my 
> head around  it, but as of now, I really prefer the way iOS development 
> handles this. My background is predominately Web so I'm no stranger to 
> mockup languages. In general with the Android SDK I found  everything to be 
> well documented and to just "makes sense" until I got to the XML driven 
> layout aspect of Android. I understand everything is a View. That concept 
> is easy to grasp, but what's difficult is to find a really good reference 
> for all my available controls with contextual (and visual) examples of 
> their use. There are sites that demonstrate use patterns but these are 
> missing code samples. This puts the the developer in a situation where they 
> go on a goose chase. Don't tell me they are built into the visual design 
> tool for Eclipse, it's crap and I refuse to use it. A reference should 
> exist outside the visual editor and that's what I'm looking for. Also do 
> not point me to the general SDK API documentation for views. I don't want 
> to sort through hundreds of classes trying to extract TextView, Button, etc 
> (what an incredible time sink that is). My process has been working like 
> this. 
>
> 1. See interesting UI pattern implemented in popular apps: x and y 
>
> 2. Go to Internet trying to track down possible Android UI components to 
> implement feature seen in apps x,y 
>
> 3. Try to find source examples of implementing controls I am inferring are 
> being used (this is usually a try and repeat cycle taking hours) 
>
> 4. After much trial, frustration and anger finally retreat to something 
> else. 
>
> I'll give an example of such a feature: Horizontal view swiping. From the 
> official Android Play store to the CNN App, this is probably the most 
> common navigation we're seeing for dealing with menus on Android. It's 
> beautiful, it's also a pain in ass to implement. After much searching I 
> found an article on this on the official site 
>
>
> http://android-developers.blogspot.com/2011/08/horizontal-view-swiping-with-viewpager.html
>  
>
> I can open the source example and understand what's going on but my 
> question is why does it take pages and pages of foundation code to 
> implement something that should be core? IMO this is where Android 
> development is much more complex than it needs to be and frankly it's where 
> the weak point is. Yes, we need the power of doing things at the lower 
> level like this, but we need a nice abstraction layer on top do knock these 
> things out quickly as well. If you've done iOS development you know what I 
> mean. 
>
> View transitions are another good example. Let's say I want my view to 
> fade in or out or that I want it to rotate in 3D (just do a simple flip or 
> slide in and out). I don't understand why the developer has to go so low 
> level to accomplish these sort of task. I'm hoping perhaps I missed 
> something and that there are wrappers for common transforms, etc... 
>
> Overall I'm just very frustrated with what the Android SDK offers to the 
> UI developer. It seems some more abstraction for common patterns should be 
> baked in and it's not. 
>
> To bring this around so that my first post to this group is not just a 
> rant, I'd looking for community recommendations for a masters course/book 
> on Android UI. I want to know the best source you've found on programming 
> Android UI. I don't have weeks to spend "just tinkering with it" trying to 
> get my head around the common patterns. 
>
> Is Google doing anything to help? 
>
> Thanks, 
> RMZ 
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to