March 2011 - posts - Microsoft User Experience Blog

March 2011 - posts

SketchFlow for Windows Phone – How to add a panorama view

[As an exception on this blog this post is in English because this is of interest to a broader audience]

[UPDATE 16 June 2011 – A better, more advanced, project template has been released by the Blend product team. See my newer blogpost.]

In an earlier post I published the project template for Blend to enable a way to create a SketchFlow prototype for a Windows Phone application. This post adds information on how to go from there.
This post: how to add an a panorama view.

NOTE: an update was made to the project template ZIP-file. You will need that update to follow the rest of this post. You can download it from here. For installation instructions, see the first post.
In this update the background of LayoutRoot of the PhoneUI component was set to transparent.

Once you have created a project based on the template, create a new screen or select an existing screen like App Settings Screen. In this tutorial I’ll be using the App Settings Screen. For a detailed description how to create your own screen, take a look at the first post.

Now you need a panorama. Maybe you have drawn something the “old way” (you know, using paper and pencil). You can scan that image and use it. For this tutorial I use this sample I drawn myself (yes, you call me “Picasso” as well). It is a panorama showing 5 different groups of data.

panorama sketch

The idea is to put this image in the PhoneUI and make it interactive, so the customer can get an idea of how it scrolls and even a way to go to another screen when content is clicked.

Drag the required image from Windows Explorer to the screen in Blend where the panorama or pivot should appear. I have chosen to add it to the standard App Start Screen. Once the image is placed make sure that it’s in the visual tree (Objects and Timeline panel) before PhoneUI, like so:

TreePanoImage

This way the image is visible within the phone UI window and the rest is outside of the phone. Position and size the image so that it aligns with the phone window. In this sample I’ve sized the image somewhat bigger to make sure the borders don’t appear in the phone’s window.

PanoPosition

Now we want to simulate scrolling the panorama view. We can do this using SketchFlow Animation. If you don’t see this panel (it should be next to the SketchFlow Map tab), open the Windows menu from the menu bar and select SketchFlow Animation to make it visible.

In the SketchFlow Animation window, click the + sign to create a new animation.

CreateSketchAnimation

A first frame is created. On the left side of the frame you see the duration of the starting animation (default 0,5 s) and the used easing function (default CubicInOut). At the bottom of the frame the duration to pause that frame is indicated (default pause is switched on and 1 s). In the top right corner of that frame-image is another + sign to add a frame after that one. Click it to create a second frame.

AnimationCreateFrame

You are now position on the second frame and you are in recording mode (you can see that by the red border, the recording button on the design surface followed by the text “SketchFlowAnimation Frame 2 recording is on”). Move the image a bit to the left until “Spotlight” is visible in the phone window. Add another frame and move the image even further left to make Categories, New and Top visible as well.

AnimationCreateFrame2

After the five frames have been created, we want to tweak the animation a bit to make it have the feel of the scrolling on the phone. Change the pause duration of each frame to 0,5 s. This duration can be seen at the bottom of each frame. Now we want to change the easing function used for each frame. Click the easing function image (the box with the swirl in it before the frame). Select the Back Out (top of the list in the middle) easing function for each frame.

easingfunction

You can test the animation by clicking the Play button at the bottom of the SketchFlow Animation window. When you start the application in the SketchFlow Player and navigate to the App Settings Screen we used, there is an option there as well to play the animation.

 

PlayerAnimation

The next step is to make it interactive. To do this we can put an invisible rectangle on top of the UI to trigger the animation. To do that make sure “Base” is selected in the SketchFlow Animation window first (on the left). Now draw a rectangle on top of the phone window, covering the Featured-sketch. If you still have the defaults set, the rectangle will have a fill-color and a stroke-color.

In the properties of the rectangle, select under Brushes “Stroke” and select the “No Brush” icon below that. After that select under Brushes “Fill” and, no matter what color, set the A to 0% (this is the alpha channel). We want to have a transparent brush. If there is no brush, it won’t respond to events like click.

Right click the rectangle in the Objects and Timeline window, select Play SketchFlow Animation and select App Settings Screen / SketchFlow Animation.

Now start the player again (F5 or Run Project in the Project menu), navigate to the App Settings Screen en click on the drawing. You’ll see the animation start. At anytime you click on that, the animation will start over.

If you want to make it a bit more fancy with a real design, you can do the same trick with another image of course. For instance, use this sample image from the Windows Phone Design Templates and do the same.

Panorama

With all the text and the images this looks as a lot of work, but actually doing it is much faster. Maybe I’ll make a screencast for this … I’ll keep you posted Smile

SketchFlow for Windows Phone – How to Add an Application Bar

[UPDATE 16 June 2011 – A better, more advanced, project template has been released by the Blend product team. See my newer blogpost.]

[As an exception on this blog this post is in English because this is of interest to a broader audience]

In an earlier post I published the project template for Blend to enable a way to create a SketchFlow prototype for a Windows Phone application. This post adds information on how to go from there.
This post: how to add an application bar with buttons to a screen.

Once you have created a project based on the template, create a new screen or select an existing screen like App Settings Screen. For a more detailed description of the steps, look at the first post.

1. To add the gray transparent background for the application bar, just drag the Application Bar component in the SketchFlow Map to your selected screen. The application bar will appear on the UI. Now we need to do some base work to position the buttons.

2. Now we define rows in the grid of the UI, the LayoutRoot. This can be done visually by clicking in the blue area on the left of the phone UI to set the gridlines. Make sure that the bottom two rows are locked so they won’t move on resize. You can just click the lock-symbols for that.

AppBarGrid

You can also go to the grid definition in XAML and a this definition:

<Grid.RowDefinitions>
   <RowDefinition/>
   <RowDefinition Height="71"/>
   <RowDefinition Height="230"/>
</Grid.RowDefinitions>

3. We need a container for the buttons and we’ll use a StackPanel with Orientation Horizontal for that. Place the StackPanel on the UI in Row 1 of the LayoutRoot, so it’s on the same location as the application bar. Margins 0 and HorizontalAlignment set to Center.

StackPanelProperties

You can also just add the StackPanel definition below in the XAML of the screen:

<StackPanel Margin="0" Grid.Row="1" HorizontalAlignment="Center"
Orientation="Horizontal"/>

4. Now add a button to the StackPanel. You can do this for instance by selecting the StackPanel and dubble clicking the Button tool. You can also select the Button from the Assets panel. It doesn’t matter if you choose the regular Button or the Button-Sketch.

Now right-click the created button, select Edit Template, Apply Resource and select AppBarButtonStyle.

ButtonStyle

Now the buttons has the size and the circle background you know from the phone.

ButtonStyled

To use an icon instead of the standard “Button” as content, you can use any of the icons available in C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.0\Icons\dark. Just drag one of these images to the button in Blend and it will be added to the project and embedded as content in the Button. This will result in something like this:

ButtonStyled-2

You can add interactivity to the button by using Navigate To for instance so it navigates to another page.

If you didn’t understand the process above or if you are experiencing a different outcome, take a look at the App Start Screen and check out the definition of the application bar there.

Framerate Fest verlengd tot 6 mei 2011

De wedstrijd rond HTML5 op Framerate Fest (www.frameratefest.com) is verlengd tot 6 mei 2011. Dus je hebt nog tijd om je HTML5 creativiteit te laten zien. Dus maak een frame en zet hem op de site. En test zowel de website als je eigen frame met Internet Explorer 9.

Je kan overigens ook op de website zelf stemmen op de Favorite Website Awards, oftewel FWA (http://www.thefwa.com/submissions/framerate-fest).

Nou ja, weer genoeg om je met HTML5 bezig te houden dus Smile

Using SketchFlow for Windows Phone Prototyping

[As an exception on this blog this post is in English because this is of interest to a broader audience]

[UPDATE 16 June 2011 – A better, more advanced, project template has been released by the Blend product team. See my newer blogpost.]

[UPDATE 31 March 2011 – Project template was updated with a minor fix (PhoneUI background transparent)
Installation instructions are modified with new download. You can also download the new version here.
]

SketchFlow, which is part of Expression Blend, is a very powerful way to prototype your applications. By using SketchFlow in Blend and the SketchFlow Player for the customer it is so much easier to communicate about the functionality and the experience of an application in the prototyping phase of a project. And the prototype can be a solid base for further development all the way to production.FileNewProject

Out of the box SketchFlow can only be used for WPF or Silverlight. Windows Phone is not (yet) supported. But it can be as useful for phone apps as well. I was inspired by Episode 48 and Episode 49 of Silverlight TV on Channel9, where Janete Perez showed how to use SketchFlow for Windows Phone prototyping. But to me there were too many user actions required to get started.

To solve that problem with the current version of Blend, I have created a project template for prototyping Windows Phone applications with SketchFlow using the Silverlight engine. This provides a quick start for prototyping phone applications.

Once the project template is installed Blend will show an option to create a Windows Phone SketchFlow Application. As usual you can provide a name for your project. The template only supports C#, but this not used in prototypes most of the time. So don’t let that alarm or frighten you, especially when you’re a designer.

When the project is created you see a SketchFlow Map with a number of items on it.

SketchFlowMap

There are three component screens (green) which contain standard elements and behavior for the phone’s start menu, the phone UI (hardware frame) and an application bar. These components can be used by other screens. The PhoneUI is normally used by every screen in the prototype. This component also contains handling for the Back button (navigate back) and the Menu button (navigate to Start Screen) on the phone.

For the start of the complete prototype I have chosen to show the typical Windows Phone start screen (Start Screen in gray on the map), where the user can start the application (the App Start Screen).

The blue items are all application screens. Three are defined by default in the project template: a start screen, an information screen and a settings screen. The three screens are just blank screens with some commenting notes on it, all set up to help you get started prototyping. The App Start Screen has an application bar with two buttons to navigate to the App Info Screen or the App Settings Screen.

How to install the template

Blend supports per user project templates besides it’s own templates. To keep that installation clean the description below installs the project templates in the user directory. Blend will automatically pick up that template.

To install the project template follow these steps:

  1. Download WindowsPhonePrototyping.Templates.V1.1.Blend4.zip.
  2. When on Windows Vista or Windows 7, unblock the zip-files to mark it safe.
    To do this, right click the zip-file and select properties. In the properties dialog click the Unblock button.

    UnblockZip
  3. Right click on the zip file and select Extract All.
  4. Select your "My Documents" folder as the target for the extraction.
    On Windows 7, it is c:\users\[username]\Documents.
  5. Press the Extract button. Confirm that you want to merge the folders.

How to start with the template

To start using the template with SketchFlow you need Expression Blend with SketchFlow installed on your machine. To start with a prototype based on the template follow these steps:

  1. Start Expression Blend.
  2. Select File, New Project …
  3. Under the Project Types open the Windows Phone branch and select SketchFlow.
  4. In the list of projects select Windows Phone SketchFlow Application
  5. Type the name for your project in the Name field and press OK.

You probably want to create more screens from here. New screens are always created with a default size as defined in the Options menu of Blend. To make sure that new screens have the same size as the other phone screens you can set that default to 583 pixels width by 1124 pixels height. This can also be done by right click in the SketchFlow Map on Start Screen and select Set as Default Navigation Screen Size. But be aware that this is the new default for all screens created in Blend. Of course you can always remove that default or reset it. Another option is to set the size of each new created screen by hand. To do that, set the size of the top-level object [UserControl] to 583x1124.

SetScreenSize

Once you created a screen you can add the PhoneUI but simply dragging the PhoneUI component in the SketchFlow Map to your new created screen.

Running the prototype

Because the project template is based on the SketchFlow template for Silverlight, a Silverlight application will start with the SketchFlow player containing your phone prototype. As the standard size of all the screens is 583x1124 it will not fit your monitor most of the time. Just use the zoom slider on the left hand side to zoom out to see to complete phone.

ZoomSketchflowPlayer

And now what?

Now it’s up to you to start prototyping. This can be done for instance by scanning drawings and fit them in the PhoneUI. You can even make parts of the drawing interactive. Or you can use the Sketch-style controls SketchFlow offers to build a UI.

Janete pointed to a great set of extra “tools” for prototyping, called Mockup controls. This is a set of sketch-style controls that are easy to use to build prototypes. For instance there is a login control containing a username and password field and some buttons. To get these controls read the blogpost of the Blend team to copy them from Blend OR go to Codeplex to have an easy install of the mockup library.

The current list of how to’s:

So, stay tuned … and let me know what you think of the template Smile

Expression Web 4 Service Pack 1 is uit

Expression Web, de web editor van Expression Studio, heeft een update gekregen met Service Pack 1. De in het oog springende nieuw zaken zijn:

  • HTML5 en CSS3 ondersteuning
  • Uitgebreidere PHP ondersteuning, waaronder PHP 5.3
  • IntelliSense voor speciale karakters (copyright,
  • SuperPreview ondersteunt nu ook IE8 en IE9 en via de SuperPreview online service (beta) kan ook Chrome en Safari 4 en 5 op Windows en Mac getest worden.
  • Internet Explorer 9 ondersteuning

Expression Web Service Pack 1 is hier te downloaden. Expression Web 4 moet al geinstalleerd zijn. Als je het een keer wilt uitproberen is het mogelijk een Trial versie van Expression Studio te downloaden.

Hieronder nog wat meer details van de SuperPreview functionaliteit.

SuperPreview

SuperPreview is er al langer, maar ik merk dat het toch nog redelijk onbekend is bij veel web ontwikkelaars. SuperPreview is een visuele debugger. Een pagina kan in meerdere browsers naast elkaar worden gehouden (of over elkaar heen worden gelegd) zodat gekeken kan worden wat de verschillen zijn.

Naast de ondersteuning voor IE6 tot en met IE9 worden ook lokale installaties van FireFox ondersteunt. De online service geeft vervolgens de opties voor Safari (Windows of MacOS) of Chrome. En uiteraard kan er ook een vergelijking worden gedaan met een afbeelding.

SuperPreview 4SP1 Browser Choice

Als vervolgens minimaal twee browsers geselecteerd zijn. kan je gaan vergelijken. De gekozen pagina is twee keer te zien, namelijk de basis geselecteerde browser en een andere browser die vergeleken wordt.

SuperPreview 4SP1 Compare

Vervolgens kunnen losse HTML elementen aangeklikt worden waarna getoond wordt wat de definitie daarvan in beide browsers is. Verschillen worden hier ook aangegeven.

Wil je nog dieper graven, dan is er ook een DOM view. Hierbij wordt het Document Object Model (de HTML object structuur) getoond van beide browsers. Door op een element te klikken wordt de bijbehorende HTML getoond.

SuperPreview 4SP1 DOM

Hierdoor kunnen verschillen in verschillende browsers bekeken en onderzocht worden. Niet alle browser(versies) kunnen namelijk naast elkaar worden geinstalleerd. En de browser voor Windows en MacOS is zeker niet (zo maar) op een machine te installeren.

SuperPreview biedt dus een eenvoudige manier om de vergelijking te doen. SuperPreview is onderdeel van Expression Web, zowel van de stand-alone versie als in Expression Studio.

Wees creatief met HTML5 op Frameratefest.com (en win)

Microsoft_FRF_PARTICIPATE_367X242Er is steeds meer activiteit rond HTML5, CSS3 en alle aanverwante webtechnologiën. En natuurlijk draagt Microsoft daar ook een steentje aan bij. 15 maart is immers Internet Explorer 9 uitgekomen die deze nieuwe standaarden ondersteunt. En we wilden laten zien hoe goed IE9 met deze standaarden om kan gaan. Onder andere door de hardware acceleratie zijn er veel mogelijkheden met zowel video als graphics.

Om hier aandacht aan te geven is er een wedstrijd gestart onder de naam Framerate Fest. De wedstrijd loopt op www.frameratefest.com. De bedoeling is om een frame van 300x300 pixels te maken met daarin iets wat jou creativiteit laat zien. In hetzelfde scherm is ook te zien hoeveel frames per seconde (FPS) getoond kunnen worden in jouw browser op jouw systeem. Als je dat al niet doet, installeer dan zeker IE9 even (als je op Windows werkt) om de kracht van IE9 te zien.

Maar je kan ook gewoon meedoen om jouw creativiteit te laten zien. De wedstrijd duurt tot en met 25 maart en er zijn ook nog leuke prijzen te winnen. Misschien werk je wel op een campagne en heb je even een uurtje om iets met HTML5 voor die campagne te maken. Mag allemaal. Dus doe mee op www.frameratefest.com

Maak een WP7 app met begeleiding (en gratis) bij de Sevensteps Windows Phone 7 Lan Party

Aanstaande donderdag 10 maart organiseert Sevensteps samen met gebruikersgroep dotNed een Windows Phone 7 Lan Party. Dit event begint om 9:00 en gaat, hoe kan het ook anders, over het ontwikkelen van Windows Phone 7 applicaties. Het doel is aan het einde van de dag een werkende Windows Phone 7 applicatie klaar te hebben met bijbehorende backend systemen. Alle deelnemers nemen zelf een laptop mee en ontwikkelen mee met ervaren en minder ervaren mensen, ontwikkelaars en designers!

De toegang is gratis. Inschrijven doe je op http://www.dotned.nl/register.aspx?meeting=33. Intussen zijn er al dik vijftig aanmeldingen. De applicatie die gebouwd gaat worden zal bouwhistorische informatie over het Rijsmuseum Amsterdam tonen.

Kom jij ook?

Zoek

Go

Dit weblog

Nieuws

Selecteren