The code for today is at: https://github.com/slodge/NPlus1DaysOfMvvmCross/tree/master/N-21-Babel
The slides are on: https://speakerdeck.com/cirrious/internationalization-in-mvvmcross
Today I tried a slightly different style - I tried slides and a pre-built demo. Let me know what you think of this style - is it useful? Better? Worse? Different?
Coming up soon.... more on custom controls, and then time for custom presenters too - tabs, panoramas, hamburger-slideout-views, etc...
A full and fabulous index for N+1 is on http://mvvmcross.wordpress.com/
Previously in N+1:
- N=0 - a first application - http://slodge.blogspot.co.uk/2013/04/n0-first-mvvmcross-application-n1-days.html
- N=1 - tip calc - including the Android Designer and using IoC -http://slodge.blogspot.com/2013/04/n1-tipcalc-second-example-adding-ioc.html
- N=2 - Kittens - lists and tables - N=2: Lists and Kittens (N+1 days of MvvmCross)
- N=3 - Kitten Cells on iPhone - http://slodge.blogspot.co.uk/2013/04/n3-kitten-cells-on-iphone-n1-days-of.html
- N=4 - ValueConverters - http://slodge.blogspot.co.uk/2013/04/n4-valueconverters-n1-days-of-mvvmcross.html
- N=5 - ICommand and Multiple Pages - http://slodge.blogspot.co.uk/2013/04/n5-some-first-icommands-and-multiple.html
- N=6 - Books over the Network - http://slodge.blogspot.co.uk/2013/05/n6-books-over-network-n1-days-of.html
- N=7 - Books++ - a little UI refinement -http://slodge.blogspot.co.uk/2013/05/n7-adding-some-refinements-to-books-n1.html
- N=8 - Location, Location, Location - http://slodge.blogspot.co.uk/2013/05/n8-location-location-location-n1-days.html
- N=9 - Messenger - http://slodge.blogspot.co.uk/2013/05/n9-getting-message-n1-days-of-mvvmcross.html
- N=10 - SQLite - http://slodge.blogspot.co.uk/2013/05/n10-sqlite-persistent-data-storage-n1.html
- N=11 - iOS CollectionViews - http://slodge.blogspot.co.uk/2013/05/n11-collectionview-n1-days-of-mvvmcross.html
- Collect-A-Bull
- N=12 - PCL, SQLite and a first UI - http://slodge.blogspot.co.uk/2013/05/n12-collect-bull-full-app-part-1-n1.html
- N=13 - Some small improvements - http://slodge.blogspot.co.uk/2013/05/n13-couple-of-small-collect-bull.html
- N=14 - Adding PictureChooser and File - http://slodge.blogspot.co.uk/2013/05/n14-adding-picturechooser-and-file.html
- N=15 - A details view - http://slodge.blogspot.co.uk/2013/05/n15-adding-details-page-to-collect-bull.html
- N=16 - Moving to Android - http://slodge.blogspot.co.uk/2013/05/n16-taking-collect-bull-from.html
- N=17 - Moving to iOS - http://slodge.blogspot.co.uk/2013/05/n17-from-wp-and-android-to-touch-n1.html
- Custom Controls:
- N=18 - On Android - http://slodge.blogspot.co.uk/2013/05/n18-android-custom-controls-n1-days-of.html
- N=19 - On iOS - http://slodge.blogspot.co.uk/2013/05/n19-custom-controls-on-ios-n1-days-of.html
- N=20 - On WindowsPhone - http://slodge.blogspot.co.uk/2013/05/n20-custom-controls-on-windowsphone-n1.html
Can't wait demo with custom presenters! I don't believe that tab-based applications development is so non-trivial as it looks like. :-)
ReplyDeleteHello, Stuart!
ReplyDeleteAs for localization MvvmCross approach... Do I understand correctly, that current approach mentioned does not consider any "not-straight-forward" localizations, i.e., something like:
LocalizeString("StringName", KittensCount)
where the actual string template is "There are {0} kitten(s) found" (including plurals/genders localization)?
Boleslav
Try vernacular if you need that
DeleteHello, Stuart!
ReplyDeleteThank you for you posts! Very useful!
I have problem with Internationalisation fo iOS. I downloaded source from https://github.com/slodge/NPlus1DaysOfMvvmCross/tree/master/N-21-Babel. And when i run Babel.Touch i see "Babel|FirstViewModel|ExampleTest"(http://postimg.org/image/t0v40usmh/). Android project work fine. Could you help me? Thanks.
Hi Alexey. Take a look at the videos, try writing your own version, add debug trace and see if you can work it out - you'll learn lots on the way. Good luck. Stuart
DeleteThank you for answer, Stuart! When i added link files, i forgot to change build action "Content".
DeleteAt the moment I have another problem.
When I check on the device, localization works fine, but when i change configuration to Ad-Hoc and install ipa file on device. I get "ProjectName|NameViewModel|NameTest".
Did you have it?
Thanks.
No - I've not tested in adhoc, but have tested on device.
Delete.GetType() is not available in my TextProviderBuilder ��
ReplyDeleteTry using this: "this.GetType().GetTypeInfo().Assembly" and add a reference to "System.Reflection"
Delete