Monday, June 25, 2012

I wonder... where did the "2 days of developer stuff" disappear from the Windows Phone summit?

Early May:


Early June:


June 20th arrives:
"Welcome to the Windows Phone 8 Platform Preview" - a press conference lasting 2 hours and sharing very limited developer info.

Saturday, June 23, 2012

Thursday, June 14, 2012

MvvmCross on Channel9

My friend Daniel Plaisted at Microsoft has just posted this video on Channel 9 - it includes TwitterSearch from MvvmCross vNext.



In particular he shows the code sharing in MvvmCross across Metro, WP7, MonoTouch and MonoDroid:




Portable libraries are the future - love em!

Changing Navigation Bar Button colour (color) in MonoTouch and MvvmCross



This was my answer:

At the end of this, I was able to add some bar button changes like:
        var leftButton = new UIBarButtonItem("FooBar", UIBarButtonItemStyle.Bordered, null);
        leftButton.TintColor = UIColor.Green;
        NavigationItem.SetLeftBarButtonItem(leftButton, false);
        NavigationItem.RightBarButtonItem.TintColor = UIColor.Red;
Which resulted in:
four
Alternatively, by placing code in the WelcomeView:
        var leftButton = new UIBarButtonItem("FooBar", UIBarButtonItemStyle.Bordered, null);
        leftButton.TintColor = UIColor.Green;
        NavigationItem.BackBarButton = leftButton;
Then I succeed in achieving:
three
Alternatively, by using code like:
        UIBarButtonItem.AppearanceWhenContainedIn(typeof(UINavigationBar)).TintColor = UIColor.Blue;
Then this enabled me to customise all the navigation bar buttons like:
two

At one point, I also managed to achieve:
one
... but sadly I've genuinely no idea which code combo gave me that! If your problem is with back buttons in particular, then I think you will need to dig around other questions and/or post some code and hope someone can help - there's lots of posts about how to do this, but I can't quite figure out what they all mean for MonoTouch - e.g. Separate title in NavigationBar and navigation buttons

Thursday, June 07, 2012

How to bind to a UIViewController instance Property in Monotouch MvvmCross

From http://stackoverflow.com/questions/10929779/monotouch-mvvmcross-binding-to-instance-variables




From reading your question, I think what you are saying is that the View itself has a field of type string...
Your code:
this.AddBindings(
     new Dictionary()
     {
          { StringTemp, "{'Text':{'Path':'AboutText'}}" },
     });
is trying to bind the property Text on the object referred to by StringTemp to whatever is inAboutText on the ViewModel.

To set the StringTemp string itself you should be able to bind to it using something like:
 this.AddBindings(
      new Dictionary()
      {
           { this, "{'StringTemp':{'Path':'AboutText'}}" },
      });

Just to explain the parts in: { this, "{'StringTemp':{'Path':'AboutText'}}" }, these can be thought of as { TargetObject, "{'TargetPropertyName':{'Path':'SourcePropertyName'}}" } where:
  • TargetObject (this) is the object you are aiming to set property values on
  • TargetPropertyName (StringTemp) is the name property that you are aiming to set
  • SourcePropertyName (AboutText) is the name of the property that will be the source of the value
Note that Mvx uses Properties - not fields - so private string StringTemp {get;set;} is bindable, but private string StringTemp; is not.

You could also do two-way binding for this string reference if you wanted to... but you would need to setup some custom binding information to do so - there would need to be some event fired and captured in order to update the ViewModel (I'll leave that for another day!)

For situations where direct binding isn't what you are looking for, then you can always subscribe to PropertyChanged and handle the notifications in more verbose code... e.g.:
ViewModel.PropertyChanged += (s,e) => 
{
    if (e.PropertyName == "AboutText")
    {
         // do something complicated here with the new ViewModel.AboutText value
    }
};
...but I personally tend to avoid this type of code where I can...

Saturday, June 02, 2012

Mvvm - MvvmCross - MonoDroid, MonoTouch, Wp7 and WinRT - going portable

A presentation in progress about the changes for using Portable Class Libraries (and Portable Library Projects) within MvvmCross for MonoDroid, MonoTouch and WP7

On SpeakerDeck:

https://speakerdeck.com/u/cirrious/p/mvvmcross-going-portable

On SlideShare:

Tuesday, May 29, 2012

Please put some time and love into the WP7 marketplace submission process

I love my Windows Phone

Seriously

I love it

And I love building apps for it too.

But in recent months, I've been finding the Microsoft AppHub slower and slower to use

  • certification which used to take 2-3 days now takes 7+ days
  • post-certification app publishing which used to take an hour, now takes a day
  • beta app publishing which used to take 2-3 hours now takes 2+ days
  • the support on my recent "stuck" app submission has been horrible - the app is currently on day 15 of waiting for testing and the support responses from Microsoft have basically just told me to wait, even though I told them the need for the app was urgent - it was for a conference last weekend :(

The few emails I've received from AppHub support seem to indicate that either Microsoft doesn't care, or that the team simply can't work in an agile way - their automated process has control and when it breaks, then their users don't seem to know how to detect it's broken or how to fix it.

Perhaps also, the Marketplace team are now too busy preparing for Win8 to remember WP7?

From the looks of a straw poll on Twitter today (see some of the comments below), it looks like I'm not alone in noticing the growing and slowing pains.

But I hold out hope that Microsoft care... In fact, I hope and believe that they care a lot...

Dear Microsoft. Please put some time and love into the marketplace. Please stop aiming to match Apple's experience - that's not an experience developers and app publishers love.

Thanks

Stuart


seems the general opinon about marketplace and the certification process is not good. 1 person even said "worse than Apple" :(
 Two weeks ago one of our apps was submitted, but got stuck before being signed, thereby stopping the process.
 Yes, In Firefox, trying to submit an app kicks me into a loop. Forcing me in to *ugh!* Internet explorer.
  I've launched one app and apart from not being able to delete a beta app, the process was find. I also release updates
 yes. update for current app submitted 7 days ago, still waiting for certification
 Haven't tried recently but, in the past, I couldn't submit using any non-IE browsers.
  Yes - beta apps now take 2 days, full app publishing 9 days and my current app is on day 14 "certified" + support no help
 yep, I've even emailed support but no feedback on what's up. My new app taken more than 1.5 weeks to certify, still waiting
 Not recently, but I've certainly seen tweets about it. Maybe I've been lucky and submitted off-peak times.
RT  quick straw poll: have you had issues with the marketplace and/or apphub submission? 
quick straw poll: have you had issues with the  marketplace and/or apphub submission?