13. 1.
alloy.js
• Loaded before any other controller or any
UI is compiled
• Perfect place to declare global variables
or to start calling any data
Alloy.isTablet = function(){
return !(Math.min(Ti.Platform.displayCaps.platformHeight, Ti.Platform.displayCaps.platformWidth) < 600);
}
18. 6.
Widgets
• Awesome way to not only reuse code but
to share code
• Have their own views, controllers, styles
and assets and are laid out the same as the
app directory in the Alloy project.
19. 7.
Data
binding
<Alloy>
<Collection src="book" />
<Window class="container">
<TableView dataCollection="book" dataTransform="transformFunction"
dataFilter="filterFunction">
<!-- Also can use Require -->
<TableViewRow title="{title}" />
</TableView>
</Window>
</Alloy>
• Update views as your data is updated
• Available for TableView,Views, ButtonBar,
CoverFlowView, ScrollableView,
ToolBar,TabbedBar and ListView
21. “Here, then, lies the answer to how to tell whether some
developer you’ve just met (or are interviewing) is serious
about their craft in five seconds flat: borrow their device,
and triple-click the home button. If you don’t hear
“VoiceOver on”, or get prompted aboutVoiceOver,
consider that −3 points on the SteveTest.”
- Stephen van Egmond
9.
Accessibility
23. Bonus
1.
Outside
of
Ti
• Make use of TestFlight - and use their SDK
to get the full value
• Use Google Analytics or similar
• Always expect things with Apple to take
longer than planned
• Android can be a bag of hurt - target the
popular devices first
24. Bonus
2.
Ti
Community
• Twitter
• #TiAlloy
• @tonylukasavage, @FokkeZB, @nappdev
& Co
• Github
• AlloyLove.com