

So sometimes you want to set a property of the current scope, and that property isn’t there, but there is a property with the same name higher up in the hierarchy, and you end up setting that one instead! Note that this problem does not exist with Android’s XML layouts, because scoping works differently. Specifically, when you build the GUI by using nested functions, every subsequent nested scope can access higher scopes’ properties.


Yet another example is the complete lack of support for writing menus in Anko. Another example is there are some missing “fooResource” properties to match “foo”, e.g. For example, tabItem function does not accept “text” attribute, and I found no easy way to assign it other than implementing my own tab builder function that does not use tabItem at all. The conversion turned out to be much more difficult than converting every XML tag into a matching function call.I generated a new project in IntelliJ based on a tabbed activity template and then did my best to convert it into Anko.

I’m asking because I gave it a try on a small UI and saw a number of problems. And what is the long-term vision for Anko? Are you at JetBrains convinced this is a good way to do Android development?
