UI Guidelines PDF - BlackBerry Developer

UI Guidelines
BlackBerry 10
Published: 2014-12-16
SWD-20141216105017438
Contents
Version 10.3 visual refresh...........................................................................................................................5
Key principles.............................................................................................................................................. 9
The basics................................................................................................................................................. 19
Design units for measurement...................................................................................................................... 19
Wireframe prototyping tips and tools.............................................................................................................20
Application structure....................................................................................................................................22
Screen views................................................................................................................................................ 28
Screen structure.......................................................................................................................................... 31
Different screen sizes................................................................................................................................... 37
Portrait and landscape orientation................................................................................................................48
Platform overview...................................................................................................................................... 51
Gestures...................................................................................................................................................... 51
Keyboards....................................................................................................................................................57
Trackpad and Classic navigation keys...........................................................................................................59
Notifications................................................................................................................................................ 60
Sharing and the Invocation Framework......................................................................................................... 66
Cards...........................................................................................................................................................68
Language.....................................................................................................................................................72
Accessibility.................................................................................................................................................73
Patterns.....................................................................................................................................................75
Menus......................................................................................................................................................... 75
Forms.......................................................................................................................................................... 80
Sheets......................................................................................................................................................... 82
Dialog boxes and toasts................................................................................................................................84
Settings....................................................................................................................................................... 87
Progress and activity.................................................................................................................................... 89
Saving..........................................................................................................................................................92
Deleting....................................................................................................................................................... 94
Avoiding and handling errors........................................................................................................................ 96
Components............................................................................................................................................ 101
Touch targets.............................................................................................................................................108
Highlight behavior......................................................................................................................................109
Empty states.............................................................................................................................................. 112
Audio and visual style.............................................................................................................................. 113
Color..........................................................................................................................................................113
Application icons....................................................................................................................................... 115
Active Frames............................................................................................................................................ 118
Splash screens...........................................................................................................................................122
Earconography sound design..................................................................................................................... 123
In-app icons...............................................................................................................................................126
Transitions................................................................................................................................................. 145
Designing for OLED displays....................................................................................................................... 146
Typography................................................................................................................................................147
Visual asset sizing chart..............................................................................................................................149
Legal notice............................................................................................................................................. 151
Version 10.3 visual refresh
Purposeful simplicity
The fresh new look of BlackBerry 10 reflects our
Version 10.2.1 example
commitment to purposeful simplicity. Thoughtful
visual design improves comprehension, memory, and
inference. Our interface is full of beautiful, precisioncrafted objects that productive people want to use
every day. Browse through the UI Guidelines to see
more examples of how the BlackBerry 10 visual
environment is changing in version 10.3.
The guiding principles of the visual refresh are:
Black or white canvas becomes the base. BlackBerry
10 displays a striking all-white or all-black theme
depending on device screen type or specific app
theme selection. The uniformity of the theme opens
up the screen and enhances readability. Content
becomes the focus.
Precise and simplified for an unobtrusive
experience. You only need to look at a screen
element once to understand what its purpose is and
how it can help you.
Color for focus and signature actions. Color is not
just decoration; it is a partner in productivity. Accent
colors are used to denote an actionable item, an alert,
or something requiring your attention.
Balanced tension between distinct shapes and use
of whitespace. Basic geometric shapes like sharp
squares and circles help to create tension, which is
why they are the new primary shapes of BlackBerry
10. Whitespace is used as a tool to separate chunks
of content and enhance legibility.
Version 10.3 example
Version 10.3 visual refresh
5
See the comparisons below to understand some of the most important design evolutions in the enhanced UI:
Simple, light, colorful
Heavy components and borders are replaced with a simple, flat UI that draws attention with a splash of color:
Version 10.3 visual refresh
6
Simplified app icon design
App icons now have a bright, flat design that helps the user identify the app quickly. The semitransparent tile
that previously anchored the icons to the home screen is now gone:
Revised action bars
Action bars now feature a prominent signature action and a more compact design. They move out of the way
when the user doesn't need them:
Version 10.3 visual refresh
7
Version 10.3 visual refresh
8
Key principles
BlackBerry 10 is about communication, connected apps, and fast interactions. You don't need to spend a lot
of time and effort with your app's UI. We give you the tools you need to build a great-looking UI so that you can
focus on the business logic.
Explore the key principles of BlackBerry 10 and discover how you can bring them into your app.
A fluid environment
A great experience has no compromise
BlackBerry 10 provides a seamless experience that gives users full control and flexibility in every moment and
with every touch. It's as natural and fluid as our actions are in the real world. The UI keeps the momentum
going, allowing users to achieve their goals quickly and efficiently. Keep these principles in mind:
• Organize information in a logical and approachable way so that users can respond quickly.
• Predict what users want to do next in a given context.
• Customize menus for your app and introduce them at the right time and in the right place.
Key principles
9
• Help people connect.
• Don't interrupt the flow between what users see and what they do next.
Communication at its core
Connect and get things done
What it is
It's giving people everywhere the power to connect,
collaborate, and do what's most important to them.
Your app is a communication tool. It's all about
productive action.
Why it matters
Because the essence of the BlackBerry 10
experience is communication. People are social
animals and your app can give them a chance to
connect with others. When you streamline the
experience, your users can stay in your app and
spend less time switching between apps to
communicate.
Example
Your app could integrate with BlackBerry Messenger,
the phone, or text messaging.
Best practice
Integrate communication in a way that makes
sense for your app. Always keep user goals in
mind.
Key principles
10
Content is king
Be selective about chrome
What it is
It's shining the spotlight on what people really care about. Let content be front and center, with nothing to
obscure or clutter the scene. Open the shutters wide and let people enjoy the view.
Why it matters
Because people care about content, including photos, messages, and updates. Create an experience where
content dominates. The options on the screen should stay out of the way but still convey a sense of control to
the users. This is especially important for BlackBerry smartphones with a physical keyboard because the
screen is smaller than on all-touch BlackBerry smartphones.
Examples
In the camera, the content is front and center. The most important action is a tap away, which makes it
incredibly easy for users to take photos over and over again.
Display pictures on the full screen. Let a tap on the screen display an action bar with the most common actions
for the photo. The action bar disappears after a few seconds of inactivity and returns the photo to primary
focus.
In the calendar, UI components such as pickers and drop-down lists expand inline. Users stay in the original
app context and can control the amount of information on the screen.
Key principles
11
Best practices
Be selective when you add UI components to your screens. Use most screens for interacting with the
content in your application. If you place frequently used UI components on the screen, do so judiciously.
Every time you add a UI component to the screen, you show people less of what they care about.
Use titles only when necessary. For example, in the recent call list, there's no "Today" header since the
"Yesterday" header makes the "Today" section obvious.
Cinematic experience
Make your users movie stars
Key principles
12
What it is
It's making people part of the big picture. Put the
control in users' hands and keep everything at their
fingertips. Infuse your application with fluid, natural
gestures that make the screen feel expansive.
Why it matters
Because fluid, sweeping gestures are natural and
make the screen feel larger than it is. It's much more
effective and satisfying to move through a list by
swiping across the screen instead of tapping a scroll
bar. And it's more natural to interact with the list
directly.
Example
If someone applies a filter to a photo, the visual
treatment could change as their finger slides across
the screen.
Best practice
Include gestures in your app that are contextual
and reversible.
Key principles
13
Fluid workflow
Make routines sing
What it is
It's making the experience smooth and effortless from
start to finish. Clear away every obstacle and make
your application smarter and users' repetitive actions
faster. Anticipate each move and efficiently adapt to
each response.
Why it matters
Because we're all different. Some people use their
BlackBerry smartphone mostly for calls, others never
leave BBM, and some are all about games. No matter
what people do, make your application smarter and
users' repetitive actions faster by adapting to
individual usage patterns.
Examples
If someone's most frequent workflow is sending
photos of their kids to their mother using Facebook,
find ways to help them do it faster.
Provide actions in a context menu for things that
people do often.
Try a context-sensitive approach in your app. If
someone send emails to Leticia and Julie together
more often than individually, why not provide an
option to select both of them on one tap?
Key principles
14
Best practice
It's okay if users need to execute several steps the first time that they perform an action, but when users do
the same thing a few times, their patterns become more obvious. Identify usage patterns and adapt your UI
to them.
Efficient ergonomics
Consider the context
Key principles
15
What it is
It's designing the experience with use in mind: one
hand for multi-tasking, two hands for speedy typing,
and landscape for watching movies.
Why it matters
Because people usually interact with their
smartphones in portrait orientation using one hand.
Plus, BlackBerry smartphones with a physical
keyboard only support the portrait orientation.
Examples
A list of search results grows from the bottom so that
users can reach the top hit with their thumbs easily.
On BlackBerry smartphones with a physical
keyboard, consider using shortcut keys to give users
direct access to common actions for a specific
screen. For example, let users press "T" to move to
the top, "C" to compose a message, "S" to search, "I"
to zoom in, and "O" to zoom out.
Best practices
Make sure that users can perform the most common actions in your app with one hand without changing
their grip.
Key principles
16
On all-touch smartphones, be careful with your app layout. Place the most common actions on the bottom
two-thirds of the screen because a thumb travels more easily on a long screen.
Moments of charm
Surprise, delight, and show we're human
Key principles
17
What it is
It's sprinkling moments of delight and making your
app playful.
Why it matters
Because life isn't always serious. Think of ways to
lighten up someone's day. By adding charm to your
app, you show it was designed by and for people.
Examples
Consider the playfulness in how a photo is selected in
Time Shift mode in the Camera app. These are ways
to give your app personality and make it more
engaging.
Best practice
Test your approach with your target users. The
experience shouldn't be whimsical or cartoonish.
What's charming to some might be confusing or
jarring to others.
Key principles
18
The basics
Design units for measurement
A design unit (du) is a unit of length that simplifies the creation of layouts across devices that have different
screen specifications. UI elements such as components and icons have a base design unit value that you can
use to scale assets for all BlackBerry 10 devices.
A design unit is independent of a display’s resolution and takes the standard user-viewing distance into
account. One design unit equals approximately 0.69 mm of screen space. BlackBerry chose 0.69 mm after
careful consideration of current and future screen specifications and how well the length fit into the rhythm of
our user interface.
If you know the device's bucket, you can convert a design unit value into a pixel value.
The basics
19
Device Model
Screen resolution and
density
Bucket
BlackBerry Z30 smartphone
720 x 1280 pixels
8
BlackBerry Z3 smartphone
295 ppi
BlackBerry Classic smartphone
720 x 720 pixels
8
294 ppi
BlackBerry Q10 smartphone
720 x 720 pixels
BlackBerry Q5 smartphone
330 ppi
9
Porsche Design P'9983 smartphone from
BlackBerry
BlackBerry Z10 smartphone
768 x 1280 pixels
Porsche Design P’9982 smartphone from
BlackBerry
356 ppi
BlackBerry Passport smartphone
1440 x 1440 pixels
10
12
452 ppi
The design bucket value indicates the pixel size of one design unit on the device. For example, 1 du on the
BlackBerry Q10 smartphone is 9 pixels. If you have a radio button that is 5 x 5 du, it equals 50 x 50 pixels on
the BlackBerry Z10 smartphone and 40 x 40 pixels on the BlackBerry Z30 smartphone.
You can reverse the formula to calculate du from known pixel values, making asset scaling easy. For example,
if you have a square button 114 x 114 pixels that you created for the BlackBerry Z10 smartphone and you want
to figure out the design unit size to scale the image for a 1400 x 1400 future device, here's how:
1. Divide 114 by 10 (the design bucket for the BlackBerry Z10) to get 11.4.
2. Round off to the nearest integer to get the du value (11 x 11 du).
3. Multiply the du value by the design bucket of the new device (12) to get 132 x 132 pixels.
Wireframe prototyping tips and tools
Get your app together
The basics
20
Download this handy prototyping slide deck, which
contains all the wireframes you should need to mock
up your app:
• Blank device frames for all-touch and physical
keyboard devices.
• Components, menus, controls, fields and other UI
assets, with editable labels.
• Touch gesture hand illustrations for diagramming
interactions.
• Example screen mockups of common user
interface contexts.
Simply add a blank slide, copy the elements you
need, arrange, label, and share.
Wireframe Design Slides
Best practices for planning apps
Use the 80/20 rule. Try to define requirements and experiences around use cases that 80 percent of your
users will encounter. This is especially vital when considering app settings. It's important to make sure the
remaining 20 percent of experience and error scenarios are covered, but they should not guide the initial
wireframes. Work on alternate flows once the primary flow is defined.
Group related requirements. Don't try to wireframe each requirement in isolation. They need to work with
the application and with the platform.
Do your homework. How do other apps in your class or genre work? Can you learn anything that will make
your app better?
The basics
21
Remember BlackBerry 10 design principles. Don't wireframe something that feels out-of-place with the
platform. Things don't have to be exactly the same, but they must behave consistently to avoid confusing
the user.
Start with the big picture. Create the key screens of the overall application. This will help you focus on the
main structure and goals of the app.
Tackle the key use cases. Spend time thinking about the most common tasks and build these out in
encapsulated end-to-end flows.
Align and adjust. Think platform, not application. Something may feel right for your app, but won't work
with all of BlackBerry 10. Keep in mind that you might also have multiple devices and device types to
accommodate.
Don't worry about the details. Exact label text and visuals can come later. Include enough detail to make
things clear, but avoid the overhead of keeping the document 100% reflective of the final app.
Dare to share. Show your wireframes to someone whose opinion you trust. They may be able to point out
opportunities that you missed because you have been too close to the designs.
Using Cascades Exporter as a design tool
Once you have planned out your app with wireframes, consider using Adobe Photoshop to help make your
designs a reality. The Cascades Exporter plug-in for Adobe Photoshop helps you speed up the design and
development workflow by exporting graphics from Photoshop for use in a BlackBerry 10 Cascades app.
Get started by taking a look at the Cascades Exporter install instructions and documentation.
Application structure
Approaches to navigation
Choose a navigation structure based on the most important features in your app and the type of content that
the app provides. Let users access the most frequent tasks quickly and don't overwhelm them with content or
tasks that are less important. Determine which of the following approaches work the best for your app.
The basics
22
Tabs
Tabs allow you to structure content so that users can
move easily between content of relatively equal
importance.
Use when
You have distinct sections of content of relatively
equal importance. Tabs always appear along the
bottom of the screen in an action bar.
Examples
A clock might include tabs for a world clock, an
alarm, a timer, and a stopwatch.
A music app might include tabs for artists, albums,
songs, and playlists.
A tab menu (also known as a sidebar) is a vertically
stacked, scrollable list of tabs. You can use a tab
menu to hold less frequently accessed tabs, or you
can use it instead of tabs along the bottom of the
screen. When users tap the tab menu button at the
bottom of the screen, the tab menu slides in from the
left and appears to the left of the main view.
Best practices
Place the most frequently used tab in the middle
tab position. This area of the action bar is the
easiest place for users to target.
Include tabs on the first level of an app hierarchy
only.
Use up to four tabs in an action bar. Include
additional tabs in a tab menu.
In a tab menu, place the most frequently used
tabs at the top. Place any tabs in the first level of
the hierarchy at the top of the list.
The basics
23
The basics
24
Drill down
Drill-down directories let you structure content in a
hierarchy and show selected parts of the content at
each level.
Use when
A lot of structured, hierarchical content will be added
to the app.
Example
A photo app might have vacation photos grouped by
different trips. All of the photos can't be displayed on
the first level, so users click an album to see that
trip's photos. At the second level, you might present
the photos from the trip as thumbnails. Clicking one
of the photos opens it in full screen, as the third level
in the hierarchy.
Best practice
Include a Back button in an action bar at the
bottom of the screen so that users can navigate
through the hierarchy.
Tab and drill down
A tab and drill down strategy allows you to combine both navigation approaches. Use tabs at the first level of an
app, and then let users drill down into the content.
The basics
25
Example
A music app can have tabs for different genres. Users tap a playlist to see a list of songs.
Custom or unstructured navigation
Make sure that your custom approach provides a better experience than the approaches listed above. You
should test the model thoroughly and refine it so that it's easy for users to learn.
Example
In a map, all information (such as points of interest and directions) appears directly on the map.
The basics
26
Back and peek behavior
If your application uses drill-down navigation, the
content is structured in a hierarchy. Back and peek
behavior lets users return to previously viewed levels
of a hierarchy easily.
When users return to a previous screeen in a
BlackBerry app, the movement is hierarchical.
Moving back takes users to the previous level in the
app hierarchy. Users don't necessarily return to
screen that they viewed earlier.
The Back button can contain an icon and the title of
the screen or tab that users would navigate back to. If
the context is clear, you can use the title "Back"
instead.
Use when
You create deeper levels in an app hierarchy. Make
sure the Back button appears in the far left position in
an action bar.
Examples
Users can return in three ways:
• Tap the Back button.
• Swipe their finger to the right on the content area.
• Peekat the previous level by touching the Back
button and dragging their finger to the right,
allowing them to see the previous level's contents
without leaving their current screen.
Best practices
Don't put a Back button (or any other button) on the screen as a way for users to close an app. The only
way for users to leave an app is by swiping up from the bottom of the screen.
In most cases, save automatically when users move back to the previous screen.
If you combine tabs and drill downs, make sure that the Back button navigates within the tab your user
chose and does not unexpectedly move them to another tab's hierarchy.
The basics
27
Screen views
Before you lay out your screens, think about the type of app that you're designing and the type of content that
you're providing.
You can lay out your app in a variety of ways. Choose the view that makes sense for your app, using the
following views as inspiration:
List
Grid
Lets you give an overview of content that users can
sort and filter, such as contacts or messages.
Lets you display content in a more visually appealing
way by placing images in rows and columns.
The basics
28
Free-form
Content
Lets users navigate a large canvas of information,
such as a map, a game, or an image.
Lets you set the focus on a single item (for example, a
contact card, an email message, or a Facebook post).
The basics
29
The basics
30
Screen structure
Action bar
An action bar is an area along the bottom of the screen that gives you a compact way to include actions and
tabs that apply to the screen. The convenient location of the action bar lets users access actions and tabs
easily and effectively.
You can set up your action bar to include a signature action (an action that is primary to the current screen, or
performed often). Signature action icons are highlighted with a circular background in a theme-controlled
color, and are elevated just above the action bar so that they stand out. Signature action icons float above the
rest of the user interface when the user interacts with the screen (for example, scrolling a list), to ensure that
they are always easy to interact with.
The basics
31
Use when
You want to include your app's most frequently used
and relevant actions.
Don't use when
You want to include less frequent actions. Use an
action menu instead. For example, include Delete at
the bottom of an action menu instead of in an action
bar.
Best practices
Fix action bars along the bottom of a screen. For
immersive views, such as photos or videos, let the
action bar disappear. Show it again when a user taps
the screen.
Avoid filling up an action bar just because
there's room, even if it means that only one
action is displayed in the action bar. Try and avoid
placing more than three actions on a bar.
Consider placing very important actions on the
screen. For example, if the most important action
for a photo is a user to comment on it, let the user
drag the photo to reveal space for adding comments.
Place other important actions, such as sharing,
editing, and setting the photo as wallpaper, in the
action bar.
Use the signature action, but only in contexts
where it can help the user get things done faster.
The function that you choose to be the signature
action should be a high-volume feature (for example,
Compose).
The basics
32
Title bar
A title bar is an area along the top of the screen that
can contain a title, a segmented control, or actions. A
title can help users understand the context of the
current screen.
Use when
There's only one way to view the content and the
context is not apparent.
Don't use when
The content conveys the context in a richer way. For
example, a contact card can identify the context
more easily with a picture and a name than a title can.
Tabs appear at the bottom of the screen.
The basics
33
Segmented controls
Segmented controls are a group of horizontally
stacked buttons that let users see different aspects of
the same content type (for example, top applications,
top free applications, or recently released
applications).
Use when
There are two to four ways for users to view the
content and they might switch views frequently.
Don't use when
You're not sure whether to use segmented controls or
tabs. Use tabs instead. Tabs are easier for users to
interact with and understand.
Best practices
Place the segment that's most frequently used
in the far left position. If you include an "All
content" segment, place it in the far left position.
When users return to a view, show the content
from the last filtered state. When users close an
app and open it again, show the content from the
segment in the far left position.
Don't allow segmented controls to scroll out of view unless you must show more content on the screen.
Make the font size smaller if a label doesn't fit in the segment.
If users can filter only some of the content on a screen, place segmented controls directly above the
content that can be filtered.
If you combine segmented controls with tabs, make tabs the primary method of navigation and make
sure that the segmented control filters content within a specific tab.
The basics
34
Actions in a title bar
If you implement a touch screen keyboard on a screen, actions in a title bar can help prevent users from
submitting information accidentally by providing a physical separation between the action buttons and the
keyboard.
Use when
You have a sheet and you want to help users complete and dismiss it easily. Learn more about sheets.
Don't use when
You need back navigation in a drill down navigation structure. Use the Back button in the action bar instead.
An exception is if the screen is highly focused on text input or if back navigation is a primary action. In these
cases, place the Back button in the title bar so that it isn't hidden by a touch screen keyboard.
Best practice
Place positive actions at the top-right corner of the screen(actions such as Send, Accept, and Save).
Place destructive actions, such as Cancel, Close, and Back, at the top-left corner of the screen.
Menus
Action menus
Context menus
Action menus contain actions that are less frequently Context menus give users a quick way to access the
used than actions that appear in the action bar.
most common actions for an item. Users don't have
to open an item to act on it.
The basics
35
The basics
36
Application menus
Application menus hold important actions that are
independent of context and common across the app
(for example, Settings, Log Out, and About).
Learn more about menus.
Different screen sizes
Designing a UI to accommodate different screen sizes can be a challenge. If you're designing an app for
different BlackBerry smartphones, keep reading to discover ways to design it more efficiently.
If you use UI components that are included in the BlackBerry Application Platform, the components are scaled
based on the screen size. If you use custom UI components, try dynamic layouts, such as a dock or stack
layout.
See below for the full display specifications of released devices:
The basics
37
Model and input method
Displa Screen size
y
LCD
768 x 1280 pixels
4.19 in
Aspect ratio
Screen density
15:9
356 ppi
0.07125 mm (dot
pitch)
BlackBerry Z10 smartphone
Touch screen
The basics
38
Model and input method
Displa Screen size
y
Aspect ratio
Screen density
OLED 720 x 1280 pixels
16:9
295 ppi
4.97 in
0.0860 mm (dot
pitch)
BlackBerry Z30 smartphone
Touch screen
OLED 720 x 720 pixels
3.1 in
1:1 square
330 ppi
0.077 mm (dot
pitch)
The basics
39
Model and input method
Displa Screen size
y
Aspect ratio
Screen density
LCD
1:1 square
330 ppi
BlackBerry Q10 smartphone
Touch screen and physical
keyboard
720 x 720 pixels
3.1 in
0.077 mm (dot
pitch)
The basics
40
Model and input method
Displa Screen size
y
Aspect ratio
Screen density
BlackBerry Q5 smartphone
Touch screen and physical
keyboard
The basics
41
Model and input method
Displa Screen size
y
LCD
768 x 1280 pixels
4.19 in
Aspect ratio
Screen density
15:9
356 ppi
0.07125 mm (dot
pitch)
Porsche Design P’9982
smartphone from BlackBerry
Touch screen
The basics
42
Model and input method
Displa Screen size
y
LCD
720 x 1280 pixels
Aspect ratio
Screen density
16:9
295 ppi
(see note below)
(see note below)
4.98 in
0.0860 mm (dot
pitch)
BlackBerry Z3 smartphone
Touch screen
The basics
43
Model and input method
Displa Screen size
y
Aspect ratio
Screen density
OLED 720 x 720 pixels
1:1
330 ppi
3.1 in
0.077 mm (dot
pitch)
Porsche Design P'9983
smartphone from BlackBerry
Touch screen and physical
keyboard
The basics
44
Model and input method
Displa Screen size
y
Aspect ratio
Screen density
LCD
1:1
453 ppi
1440 x 1440 pixels
4.5 in
0.0561 mm (dot
pitch)
BlackBerry Passport smartphone
Touch screen and touch-sensitive
physical keyboard
The basics
45
Model and input method
Displa Screen size
y
LCD
720 x 720 pixels
3.5 in
Aspect ratio
Screen density
1:1
294 ppi
0.0287 mm (dot
pitch)
BlackBerry Classic smartphone
Touch screen and physical
keyboard, including a trackpad and
navigation keys
Note: The BlackBerry Z3 smartphone's native resolution is 540 x 960 pixels and its screen density is 221 ppi
(0.1149 mm dot pitch), but it simulates a 720 x 1280 pixels and 295 (0.0860 mm dot pitch) ppi display, so
apps should target those higher values.
The basics
46
Tips for a square screen
Best practices for optimizing layouts
Make sure that your layouts scale across devices. Use dock and stack layouts so that layouts scale
automatically. If you created custom layouts in the past, or used fixed or absolute layouts, you might need
to adjust the sizes and positions of your UI components manually to fit different screen sizes.
Pay attention to background bitmaps and assets that use the full screen. If you created custom bitmaps
and assets for larger BlackBerry smartphone screens, you might need to scale those assets by 94% if you
want to use the assets for smaller BlackBerry smartphone screens.
Make static segments scrollable. Consider making static segment controls scrollable with the main view to
make sure there's enough space to present the information they contain.
Rethink background images. Consider using a repeatable background pattern instead of a static image.
Repeatable patterns expand to fit any screen resolution.
Don't create views in landscape orientation for smartphones with a 1:1 aspect ratio. The BlackBerry
Application Platform does not support landscape orientation on smartphones with a 1:1 aspect ratio.
Best practices for focusing on content and primary tasks
Make sure that the most important information is visible. Use non-sticky mode for titles and filters. Adjust
the initial scroll position of views so that the most important information is in focus. Reconsider the
organization of your content so that vital information is shown clearly.
Optimize screen real estate. Consider allowing UI components such as title bars to scroll out of view. If
you're designing an immersive application, such as a video player, where users typically stay in the
application for a significant period of time, UI components should disappear from the screen after a few
moments with no interaction and reappear when a user starts interacting with the screen again.
Make UI components semi-transparent if they overlap with content such as pictures. This effect allows
users to focus on the content instead of the component.
Consider how camera sensors and media formats use different aspect ratios. When you are using the
camera, or displaying photos or video, consider whether it's better to crop to maximize the content area or
scale to show the full content.
Best practices for optimizing split-screen views
Adjust the height of each view. Review and optimize the height of each view so that there's enough room
for users to see and interact with the content.
If you cannot optimize, remove. If you can't optimize your split-screen views, consider removing them for
smaller screens.
The basics
47
Portrait and landscape orientation
In most cases, you should lay out your app in portrait
view. Users tend to hold their BlackBerry smartphone
in one hand, and therefore, typically use it in portrait
view. Plus, smartphones with a physical keyboard use
portrait view exclusively.
Sometimes, landscape view can offer benefits and
provide a better experience for users of all-touch
BlackBerry smartphones. For example, movies and
games. Movies are made to be viewed in wide screen,
and games often require two-handed interaction,
which suits a landscape orientation well.
In some cases, you might lay out your application in
both portrait and landscape orientation. This
approach lets you provide a different focus in each
orientation to enrich the user experience. For
example, you could show a basic calculator in portrait
orientation and a more advanced version in
landscape orientation.
Best practices
If you create custom UI components, make sure
the components appear correctly in both
orientations. If you use BlackBerry UI components,
they're designed to transition seamlessly if users
switch between views.
Maintain consistency. Don't force your users to
switch between orientations manually as they use
your app. If a screen supports landscape orientation,
any subsequent screen should also be available in
that orientation.
Don't create views in landscape orientation for
smartphones with a 1:1 aspect ratio. The
BlackBerry Application Platform does not support
landscape orientation on smartphones with a 1:1
aspect ratio.
The basics
48
The basics
49
The basics
50
Platform overview
Gestures
Instead of poking at UI components, users interact with content on the screen using gestures. Avoid cluttering
the screen with UI components and design your application to support the available gestures. For example, let
users zoom into a picture by spreading two fingers instead of tapping a button to zoom in incrementally.
Bezel gestures
BlackBerry 10 smartphones support gestures from the device bezel, which is the frame around the display
area of the screen. You don't need to implement these gestures in your app. They are provided automatically.
Wake up the device
Display notifications
Display the BlackBerry
Hub
Minimize applications
Platform overview
51
Display a touch screen
keyboard
Display an application
menu
Platform overview
52
Content gestures
If they apply to your app, you can use the following gestures to let users manipulate content directly.
Scroll
Scroll between two items
Select one item
Progress through a file
Peek
Open an action menu
Zoom in
Zoom out
Platform overview
53
Move an item from one
place to another
Platform overview
54
Best practice
If users select a few items at the same time and try to perform an action that can't be performed on all of
them (for example, because some are locked), complete the action on the items that can be acted on.
Display a toast to indicate why the action wasn't performed on some items.
Touch-sensitive physical keyboard gestures
The BlackBerry Passport smartphone features a touch-sensitive physical keyboard. This keyboard allows users
to control the device by swiping their fingers over the surface of the keys.
Fine cursor control and scrolling
Open the symbol picker
Double-tap the keyboard, then swipe your finger to
Swipe down on the keyboard while you are typing to
move the cursor. Swipe up and down to scroll through show symbols.
documents.
Delete text
Select a suggested word
Swipe right to left on the keyboard while you are
typing to delete a word quickly.
Place your finger on the keyboard below the
suggested word, and flick it up toward the screen.
Platform overview
55
Platform overview
56
Keyboards
Touch screen keyboard
A touch screen keyboard appears on all-touch
BlackBerry smartphones when a user taps in a text
field or text area. A user can also display the keyboard
by dragging two fingers from the bottom of the
screen. A user can hide the keyboard by dragging two
fingers to the bottom of the screen, or by touching
and holding the space key.
Best practices
For a task that mostly requires typing (for
example, replying to a message or adding a new
contact), give focus to the correct field so that the
touch screen keyboard appears when the screen
opens.
For a task where typing is optional (for example,
the text message chat view, which is used mostly
for reading a conversation thread), don't put focus on
the text field. Allow the user to tap the text field to
bring up the keyboard when they are ready to type.
If you use a static layout, make sure users can
still reach important parts of the UI. If you need
to, place actions inline.
The keyboard covers the action bar, so try to
avoid placing important actions where the
keyboard will pop up often.
Platform overview
57
Physical keyboard
Many users (especially existing BlackBerry
smartphone users), prefer a physical keyboard to get
things done quickly. Consider scenarios where it
makes sense for users to start typing to complete a
task in your app. For example, in date and time
pickers, a user can choose the time by starting to
type.
Best practices
Use shortcut keys to make repetitive tasks
easier and promote one-handed use. Give users
direct access to common actions for a specific
screen. For example, allow users to press "T" to move
to the top, "C" to compose a message, "S" to search,
"I" to zoom in, and "O" to zoom out.
Use the keyboard for direct action. For example,
set focus on a field so that users can just start
typing.
Don't force users to switch between the
keyboard and the touch screen. Let users use the
keyboard to complete a task.
Shortcuts are just shortcuts. Make sure there is
another way of performing an action in your app.
Platform overview
58
Trackpad and Classic navigation keys
Users can use the physical trackpad to navigate and highlight text. The trackpad also gives users better control
over the cursor or pointer and provides an unobstructed view of the touch screen. Highlights appear on
controls as users navigate with the trackpad so it is easy to tell which item has focus.
In most cases, an action occurs when users release the trackpad, not when they click it. However, when users
click and hold the trackpad, the action occurs before users release the trackpad.
Users can perform the following actions with the trackpad:
User action
Result
Click the trackpad.
Performs default actions on an item. For example, launching
an app from an app icon, or opening a list or grid item.
Click and hold the trackpad.
Opens an action menu associated with an item, if applicable.
Click the trackpad while pressing the Shift
key.
Highlights text or highlights multiple items in sequence. For
example, selecting multiple messages in the BlackBerry Hub.
Move a finger on the trackpad.
Moves the highlight, cursor, or pointer.
Swipe across the trackpad.
Moves the content on the screen quickly in the opposite
direction of the swipe.
BlackBerry Classic also features navigation keys that provide one-press shortcuts for common commands
such as answering a phone call or returning to a previous screen:
Button
Function
Call key
• Answers a call
• Opens the Phone app
Menu key
• Opens the app's action menu
• Selects a highlighted menu item
• Opens the app's application menu (press and hold)
Platform overview
59
Button
Function
Back key
• Returns to the previous screen, or the Active Frames screen
• Closes a menu
End key
• Ends a call.
• Returns to the Active Frames screen
• Turns off the device (press and hold)
Best practices
Assign a default action that is performed when users click the trackpad.
Allow users to move easily from one item to another by swiping across the trackpad. For example, allow
users to see the next or previous picture in a collection of pictures.
Allow movement between touch screen and trackpad interactions to flow seamlessly during a task.
Allow touch screen and trackpad interactions to complement each other. For example, users can scroll to
find content using the touch screen and then use the trackpad to move the cursor to highlight a specific
sentence.
Define the trackpad navigation path logically. You can set the path that the trackpad highlight follows as
users scroll through your UI. Make sure that the focus doesn't jump around unexpectedly.
Avoid customization of the navigation keys. Users expect the navigation keys to work the same way in
every app and context.
Notifications
Notifications tell users about app events, such as a new email or a meeting reminder. You can trigger a
notification when a new event occurs, or new information is available that users might care about. The more
important and time-critical the notification, the more intrusive it should be.
Use the following information to decide how best to notify users without overwhelming them or interrupting
them too often.
Platform overview
60
Splat indicator
The simplest and most subtle way to tell users about a
new event is to add a splat indicator to the application
icon. This notification shows users that new
information is available without interrupting them or
forcing them to act.
Use for
New podcasts or game levels available to download.
Don't use for
Alarms, which are too time-critical, or new posts in a
social network, which are too frequent.
Platform overview
61
Message in the BlackBerry Hub
If your app sends a message (such as an email or a
text message), you can add the message to the
BlackBerry Hub. When a new message arrives, a splat
indicator is added to your app's icon.
Use for
Email, text, and Facebook messages.
Don't use for
Reminders or new podcasts.
Platform overview
62
Item in the notification list
If you want to tell users something important, but your
app doesn't send messages, you can add your item to
the notification list in the BlackBerry Hub. When the
item is no longer relevant, remove it from the list (for
example, a low battery notification is removed when a
user connects a BlackBerry smartphone to a
charger).
If users get multiple notifications from the same app,
the notifications are grouped together. Once the
notification is read, you should delete it automatically
from the list.
When a new item appears in the notification list, a
splat notification is added to your app's icon.
Use for
Travel updates and accessible Wi-Fi networks.
Don't use for
Messages, which should appear in the BlackBerry
Hub, and Facebook comments or likes, which are too
frequent.
Platform overview
63
Dialog box
If you have a critical event or information that is timesensitive, you can display a dialog box. Use this
approach judiciously, since it interrupts your users
and forces them to act.
Use for
Incoming calls, alarms, and calendar reminders.
Don't use for
Messages.
Platform overview
64
Toasts
A toast is a simple, non-modal, pop-up message that
allows an application to give short feedback. A basic
toast can contain text, an icon, or a combination of
the two (for example, volume level display or progress
feedback). Toasts are very short-lived; they should
appear on the screen closest to where an action was
performed and disappear in just three seconds, giving
the user enough time to read but not be annoyed by
the message.
Special intrusive toasts reserved for undoing a delete
command can also be used. This toast includes an
Undo button.
Use for
Short, one-line messages that users can read in under
3 seconds.
Don't use for
Long messages that take more than 3 seconds to
read. Intrusive toasts must only be used to undo
deletions.
Platform overview
65
LED
The LED is an important notification on BlackBerry
devices. When it flashes, it tells users that something
happened.
Use when
Adding messages to the BlackBerry Hub, adding
items to the notification list, or displaying a dialog
box.
Don't use when
Adding a splat indicator to your app icon.
Sharing and the Invocation Framework
The BlackBerry Application Platform lets you give users access to external services, such as Facebook, from a
UI component or action item in your app. For example, users can tap
•
•
•
•
Share to share a photo with a Facebook friend
Open in to open an image in an image editor
Set as to set a ring tone
Contact to call a contact
You can give users access to external services in the action bar, action menu, or context menu.
Platform overview
66
Best practices
Order the external services alphabetically.
Include a Cancel button in the top-left corner of the screen.
Avoid providing access to external services directly from the action bar. Allow users to access groups of
services from the action menu instead.
Platform overview
67
Cards
You can use cards to show screens from another app in your app. For example, users can tap a PDF attached
to an email message and view it in a previewer instead of switching apps. By using cards in your app, you let
users complete a task entirely in your app. Choose from the following three types of cards:
Platform overview
68
Previewers
Users open a previewer by tapping a file type that you
added previewer support to. A previewer transitions in
from the right side of the screen to the left. Include an
action bar with a button and applicable actions on the
previewer.
Use for
Displaying content such as photos, emails, and
documents, or play audio and video files.
Platform overview
69
Composers
A composer transitions in from the right to the left of
the screen. Use a sheet pattern to lay out the screen.
Use for
Creating content such as a new contact, calendar
entry, or status update.
Platform overview
70
Pickers
A picker transitions in from the right to the left of the
screen. Use a sheet to lay out the screen. You can
also include pickers in a composer.
Use for
Selecting content, such as adding recipients in an
address field or adding attachments to a message.
Platform overview
71
Language
The BlackBerry voice is optimistic, inspirational, passionate, intuitive, conversational, and approachable. It's
simple to understand but still respected by the technologically savvy.
Best practices for text
Be helpful. Tell users what to do and how to do it. For example, use “Please close some applications to free
up resources and try again.” instead of "Low memory error."
Be concise. Consider the user's context. Include only what users need to know. For example, if a user
cannot save a photo, use “The media card is full.” instead of “The file could not be saved because the
media card is full.”
Use positive language. Avoid blaming users for errors or unexpected conditions. Instead, focus on what
users can do to resolve the issues. For example, use "Please move to an area with a stronger wireless signal
and try again." instead of "Call failed."
Be conversational. Use simple, everyday language that users understand. For example, use “The media
card is full.” instead of “Error writing file to disk.”
Platform overview
72
Accessibility
You can help meet the needs of a diverse group of
users by designing applications that people with
disabilities or special needs can use.
Following the best practices for designing accessible
applications can benefit a broad range of users,
including the typical users of your application.
Best practices
Stay focused on the user's immediate task.
Display only the information that users need at
any one moment. For example, simplify data
selection and presentation by displaying information
in a logical order.
Group components, and simplify according to
common usage or common functionality to
minimize the cognitive load for users. Use the least
number of buttons, or other clickable areas, as
possible.
Use components consistently so that users can
recognize common UI components easily. For
example, use buttons to initiate actions. Avoid using
other components, such as hyperlinks, to initiate
actions.
Make actions recoverable. For example, if the
user clicks on the wrong button, they should be
able to go back to where they were and try again
easily.
Platform overview
73
Provide enough space between components so that users can distinguish one control from another and
you can make clickable items such as buttons slightly larger. Narrow the chances that the user might click
the wrong button by mistake.
Pay attention to color. Use a high contrast color scheme for your design, which can make elements easier
to distinguish from the background colors of your UI and help define which control has focus. Avoid relying
solely on color as a way to communicate (for example, using colored buttons with no text label).
Allow the user to change font sizes. Users with visual impairments often increase the font size on their
BlackBerry smartphones to enhance readability, so your app should follow their preferences.
Add labels or captions to images. A user interface that consists of images and only a few text elements that
can be read by screen readers is difficult for users with visual impairments. If your UI relies on images,
make sure each image has alternate text that can be read aloud by a screen reader.
Include closed captioning with your media. If you are including video with your app, consider adding
closed captioning support.
Expose UI elements to assistive technologies to make them easier to interpret. For example, set the
accessibility properties for controls so they can be easily identified by a screen reader.
Consider how your app behaves when users turn on assistive technologies, such as screen magnification,
a larger font size, or a screen reader. For example, is your UI laid out logically so its flow makes sense when
read aloud by a screen reader?
Make each gesture easy to discover. If a gesture applies only to a particular part of the UI, make sure that
you explain the mechanics to the user.
Platform overview
74
Patterns
Menus
Action menus
Action menus contain actions that are used less often than actions in the action bar and are not prominent or
frequent enough to place inline on the screen. People care about content, so you should minimize the number
of options that you display on the screen.
Users open an action menu by tapping the action menu button on the right side of the action bar.
Patterns
75
Best practices
Include only the actions that apply to the screen. Don't repeat actions on all screens in your app. Place
actions that apply to the whole app in the application menu.
Consider including shortcuts to common actions on BlackBerry smartphones with a physical keyboard.
When an action menu is open, let users use a shortcut key for common actions.
Place application-defined actions at the top of the menu (for example, Add as friend, or Play).
Place contextual actions that are defined by the platform in the middle of the menu. Items like Call, BBM,
Share, and Open in are provided by the invocation framework.
Patterns
76
Place Select More and Delete at the bottom of the menu, if applicable.
Context menus
Context menus give users a quick way to use the most common actions for an item in your app. Context menus
are similar to right-click context menus in desktop applications, but are designed for touch screen interfaces. If
you use a context menu in your app, users don't have to open the item to act on it.
Use when
You want to add an action for an item that is visible on the screen.
You have an existing BlackBerry app that uses shortcut keys or pop-up menus. Include the shortcut actions
and pop-up actions in context menus. Context menus replace pop-up or graphical context menus.
Don't use when
Most users probably need the action often. Place the action inline on the screen instead.
Example
If a user touches and holds on a photo, actions such as Share, Edit, Move to folder, and Delete could appear in
the context menu.
Patterns
77
Best practices
Include only the most common actions for the item. Don't clutter the menu with irrelevant functionality.
Include actions for items that users can act on, such as contacts, links, telephone numbers, images, and
list items.
Don't include the most intuitive action. Instead, perform the most intuitive action when users tap an item.
For example, if users can tap an item to open it, then don't include Open in the context menu.
Let users stay in the current context. Keep users in the app to complete a task. You can integrate your app
with other applications to avoid a dead end.
Patterns
78
Include an icon and label for each item. Make sure that the icons are meaningful to users and that the
labels are concise. It is important that icons reflect the actions because only the icons appear when a user
touches and holds an item. The user needs to drag their finger to the left to see the labels.
Consider including shortcuts to common actions on BlackBerry smartphones with a physical keyboard.
When an action menu is open, allow users to perform a common action by pressing a shortcut key.
Application menus
Application menus hold important actions that are
common for the application and aren't contextspecific (for example, Settings, Log Out, or Help).
Users open an application menu by swiping down
from the top of the screen. Users dismiss the menu by
swiping up toward the top of the screen or by tapping
outside the menu.
Best practices
Include as few actions as possible. The menu
holds only five actions. Don't include frequent
actions, navigation links, view-specific actions (for
example, Edit or Sort), or actions that are already on
the screen.
If your app contains settings or help, place the
Settings icon on the far right side of the menu and
the Help icon on the far left.
Use the same icon size and font size as items in
an action bar. Make the height of the application
menu slightly larger than the height of an action bar.
Use the same depth treatment (drop shadow) as you
would for an action menu.
Make sure the application menu pushes the UI on the screen down. The menu should not overlay the UI.
Patterns
79
For actions that open a new view (such as Settings and Help), slide the menu up and slide the new view in
from the right. For actions that open a dialog box or toast, slide the menu up and then display the dialog box
or toast.
Forms
Forms ask users to enter or select information. For
example, when a user edits a contact's details or
creates a meeting request, they're using a form.
Best practices
Minimize the amount of text that users need to
type. Ask only for relevant information. Include
smart default values and let users choose from
pickers where possible. Try to store and display
information that users enter so that they don't need to
enter the same information more than once.
If the form has multiple fields, set the focus on
the first field. This helps users complete the form
quickly. If the first field isn't a text field, don't set the
focus on any component. Otherwise, users might
miss the first component.
Patterns
80
Best practices for input
Allow users to press Enter to move to the next
text field. Make sure that the form scrolls so that
users can see the next field.
Create appropriately sized fields. Let the size of a
field indicate how much information users should
enter.
Be flexible with formats. For example, for phone
Use progressive disclosure. If the form contains
numbers, accept (519) 555-0199, 5195550199,
infrequently used fields or if a set of fields appear
and 519-555-0199.
as the result of a previous field, use progressive
disclosure to reveal fields at the appropriate time.
Use a specific type of all-touch keyboard if the
input is limited to a specific type of entry. For
example, use a numeric keyboard for entering
numbers.
Best practices for groups and labels
Group and order fields logically. For example, group related items together or include the most common
items first.
Use space, labels, dividers, and different font sizes to create hierarchy as needed, but avoid creating too
much visual noise. Use bordered sections sparingly.
Limit the use of labels. Include hint text in fields to minimize the need for labels. This approach helps keep
forms compact and content-focused. In some cases, you might need a label if the field contains a default
value or if the description of the field is too long to include as hint text.
Place labels above their associated fields to provide a stronger visual hierarchy for small screens and to
allow extra space for translated text, if required. If your app is intended for landscape orientation, consider
placing labels beside their associated fields.
Best practices for validation and submission
Validate information as users progress through the form. Don't make the user wait for the information they
entered to validate against a server before they can access subsequent fields in the form.
If you create custom UI components, use a distinct visual cue (for example, a red box) to inform users of
errors. Try to add descriptive error text close to where the error occurs. If you can't validate the information
until a user submits the form and there are errors in multiple fields, scroll to the first field in the form that
contains an error. BlackBerry UI components contain built-in error states.
Disable a Submit action until the user enters all of the required data. If the user tries to select a disabled
Submit action, display an inline message or a toast to identify the missing information.
To make text entry faster, allow users to submit a form by pressing Enter. For example, when entering a
username and password.
Patterns
81
Sheets
Sheets are full-screen views you can use for tasks.
Sheets overlay the current context by sliding in from
the right of the screen onto a full-screen view. When
users complete the task, sheets slide right and
disappear, and users return to their location on the
screen.
Users can't swipe left or right on the content area of a
sheet to navigate back, but they can peek at the
previous screen by dragging their finger to the right.
This approach helps prevent users from dismissing
the sheet accidentally.
Use when
You need to initiate a task from more than one place.
You need to initiate temporary tasks, such as showing
a contact in an app other than the Contacts app.
You have tasks that require users to enter information
in several fields, such as creating a new message or
meeting.
Don't use when
You have simple tasks or tasks that don't require
navigation.
Best practices
Include a title bar with action buttons at the top of the sheet. This helps prevent users from submitting
information accidentally by providing physical space between the action buttons from the touch screen
keyboard.
Disable positive actions until users enter the required information.
Patterns
82
Put positive actions, such as Send, Share, and Save, as buttons in a title bar at the top-right corner of the
screen.
Put destructive actions, such as Cancel, Close, and Back, at the top-left corner of the screen.
Patterns
83
Dialog boxes and toasts
Dialog boxes
Dialog boxes have many roles in BlackBerry 10. They
can be used as notifications, display progress and
activity, show errors, and help with deleting text or
files. As useful and attention-getting as dialog boxes
are, you should try to avoid implementing them
whenever possible. They are modal, and interrupt the
user's interaction with the UI flow.
When possible, present feedback and hints that you
might normally add to a dialog box inline, in the
context where the user is. This type of feedback
doesn’t interrupt the user’s flow and doesn’t force
them to act.
The goal of most dialog boxes is for the user to scan
the information they contain and perform an action in
just a few seconds.
Best practices
Don't use up screen real estate. Dialog boxes
should be less than half a screen in height and
should never block important text or images that
might help the user decide how to interact with the
dialog box. If the information or complexity in your
dialog box needs more space, consider using cards
and sheets instead, which are more flexible.
Patterns
84
Limit the number of buttons. Dialog boxes support one to four buttons that allow user input. Using four
buttons should be uncommon, because they increase the complexity of the message and can burden the
user. The buttons are placed next to each other horizontally, not stacked vertically one on top of the other.
Maintain consistency across associated dialog boxes. If multiple subsequent dialog boxes are needed to
complete a flow, you must pay close attention to the placement of the buttons. If the purpose of the dialog
boxes is similar, keep the buttons in the same general position on each dialog box to avoid unintentional
actions.
Avoid using “Don’t show again” or “Always ask” check boxes. Many users lack the knowledge to decide if
a notification dialog box should be shown to them always or never, so they choose the dialog box to be
shown at each event. This choice slows the flow and undermines their experience. Think carefully about the
frequency of these types of dialog boxes and consider instructing the user how to change app settings in the
body of the dialog box instead of using these check boxes.
Best practices
Use short, relevant titles. Short titles confirm for the user which application or function the dialog box is
associated with.
Keep the body text brief. It should clearly summarize in no more than two sentences what the user is asked
to do with the dialog box. If it is a confirmation, it should be formulated as a question. If it is a prompt, it
should instruct the user.
Use clear, impactful, single-word actions on your buttons. The actions are the most important element
and by using verbs such as “Delete” or “Cancel”, users can often select an action without reading the body
of the dialog box.
Patterns
85
Toasts
A toast is a simple, non-modal pop-up message that
allows an application to give brief feedback that
disappears from the UI quickly. A basic toast can
contain text, an icon, or a combination of the two (for
example, displaying volume level or progress
feedback).
Special intrusive toasts reserved exclusively for
undoing a delete command can also be used. This
toast includes an Undo button.
Since toasts are not as disruptive as dialog boxes,
they are often the best choice to get a simple
message across to users.
Toasts are short-lived. They should disappear in just 3
seconds, giving the user enough time to read but not
be delayed by the message.
Best practices
Keep context in mind. Toasts should appear
close to where an action was performed. The top
of the screen is the best spot for sheet actions such
as Send or Cancel. The center is prime placement
when the toast is not immediately connected to a part
of the screen (for example, to indicate that sound has
been muted). The bottom is suitable for toasts that
are triggered by actions in the action bar.
Don't be verbose. Any text you add to a toast should be readable in less than 3 seconds. Try to limit yourself
to single-sentence, single-line messages.
Patterns
86
Settings
Settings are options that give users control over certain features in your app (for example, turning sound on or
off in a game). Since settings can be overwhelming to users, try to minimize the number of settings that you
provide.
Do I need a setting?
Where should I include settings?
Include settings on the application menu that appears when users swipe down from the top of the screen.
Place a Settings icon in the top-right corner of the application menu.
Patterns
87
How should I organize settings?
Position the most frequently used or most
important settings first to make it easier for users
to change settings quickly.
Group related settings together. Use headings
and dividers to distinguish groups of settings. If
there are no logical relationships among settings, try
to organize them by component type (for example,
keep toggle switches together and check boxes
together).
Let users access advanced features through
progressive disclosure (for example, show a few
basic settings before revealing more advanced
features on a second screen). If there are
dependencies with other fields, position the
dependent fields after the controlling field.
Keep the hierarchy of settings as flat as
possible. If you need to organize the settings into
categories, let users drill down only two levels.
Include a title bar and an action bar on the
Settings screen. The action bar should also
include a Back button that allows users to return to
the previous screen.
What else should I consider?
Save changes implicitly.
Let users search for settings. Register each setting with the search framework so that they can be included in
search results. Include additional meaningful search terms (for example, synonyms for the setting).
Patterns
88
Progress and activity
Users should feel confident that actions that they want, such as rescaling an image or opening a screen, are
progressing as expected.
Sometimes, apps need time to complete complex calculations or to download data (for example, displaying a
local weather forecast for example). When a process takes longer than expected, let users know about the
process and its progress. If the user has to wait more than 3 seconds, show a progress or activity indicator.
Best practices
Use a progress indicator if you know how long the
action will take.
Use an activity indicator if you want to show that
your app is working, but you can't determine how
long it will take.
Give users a break. Consider letting users tap a
progress or activity indicator to show an option to
pause or cancel a downloading or uploading process.
Don't interrupt. When you implement an
indicator, let users interact with the application
while the indicator is displayed by using a toast or
inline control.
Don't use too much space. Place the indicator
where it will not obscure the view of the screen
too much, for example, at the bottom of the screen,
just above the action bar.
Activity indicator
Progress indicator
Patterns
89
Inline indicators
Inline indicators are non-modal ways to let users see
progress information and continue with what they're
doing.
Use when
There's a UI component you can attach the indicator
to.
Examples
• Synchronizing an inbox
• Updating an RSS feed with a few channels
Dialogs
Toasts
Dialogs are a modal way to show progress or activity.
Users can't interact with the screen during the
Toasts are a non-modal way to show progress while
users remain on the screen and are allowed to
continue.
Patterns
90
process. Activity indicators should be used in the title
of the dialog, not in the body.
Use when
• You can't process in the background.
• The app needs to finish a process before the user
can use it again.
Example
Connecting to a remote server.
For more best practices for activity and progress
indicators, see Components.
Use when
The UI doesn't have individual components you can
attach the indicator to.
Example
Uploading an image
Patterns
91
Saving
In most cases, you should save automatically when
users create or change data (such as the details for a
contact) and leave the screen. This lets users get
things done without being interrupted.
Prompting to save
In rare cases, you should save more explicitly. Do this
only when it might take a long time for users to recreate the changes. Prompting to save interrupts
users and makes them indicate whether they want to
save or delete data.
Examples
When users
•
•
•
•
Set up a Wi-Fi connection
Type an email message
Create a meeting invitation
Edit an image or video
Patterns
92
Best practices
Show users the item was saved by changing it visually on the original screen. For example, you could use
an animation to show that the alarm settings were saved. Avoid using notifications like toasts, which can
interrupt users.
If you prompt users to save, keep positive action buttons inactive such as Send, Save, or Done until users
make all of the required changes.
Patterns
93
Deleting
Users delete information daily. Before you support
deleting in your app, think about the type of
information users might delete and how important it
is. If users delete something accidentally, they might
want to retrieve it, but prompting users to confirm
every deletion can slow them down.
You can apply most of the information about deleting
to the actions of removing and resetting.
• Deleting: Deleting an item from the BlackBerry
device
• Removing: Removing an item but not deleting it
from the device (for example, deleting a song from
a playlist)
• Resetting: Returning values to a predefined state
and losing all changes
Use the criteria below to determine how you should
support deleting information in your app:
Critical content
Users might lose valuable data that affects how the
device functions.
Examples:
Resetting the device or an app.
Removing an email account.
Patterns
94
Confirmation type
Show a dialog box that describes the outcome of the deletion and requires users to confirm that they
understand the consequences before the deletion occurs.
Important content
Unimportant content
Users might lose valuable application data or content Users might reproduce the content easily.
in an application.
Examples:
Deleting an email.
Deleting a contact.
Deleting a playlist.
Confirmation type
Show an intrusive toast that lets users undelete. The
toast should disappear within 3 seconds of the user
interacting with the screen. Toasts with buttons must
be used to undo deletions only.
Examples:
Removing a song from a playlist.
Removing an alarm setting.
Removing a tag from a photo.
Confirmation type
Don't ask users to confirm deletion.
Implementation of the delete function
Users can delete or remove items in the following ways. Choose the way that works best for your app.
• In a context menu, users can touch and hold an item or use the multi-select gesture to open the context
menu. Place the Delete action at the bottom of the menu.
• In an action bar, users can open the action menu. Place the Delete action at the bottom of the menu. You
can use this approach when users are in a content view (such as reading an email, looking at a photo, or
viewing the details for a contact).
• Users tap an Edit button to act on a lot of data at one time.
Patterns
95
Place a reset action on a Settings screen. Don't use a context menu or action bar.
Best practices
Don't place a Delete action in an action bar. Use an action menu instead to minimize the risk of users
deleting an item accidentally. Since the action menu button appears at the bottom right of the screen and
the Delete action appears at the bottom of the action menu, users can double-tap to delete an item.
If users delete an item from a list or grid, remove the item from the screen using a delete animation.
If users delete an item from a content view (like an email or contact), remove it from the screen using a
delete animation and return users to the previous screen.
Avoiding and handling errors
Before you handle errors, try to avoid them. The more errors you can handle and remove during development,
the happier your users will be. Here are some ways you can avoid errors:
•
•
•
•
As you design your app, test it with target users and adjust the workflow to help users avoid errors.
Prompt users with default values.
Create fields of a size that reflects how much information users should enter.
Be flexible with formats. For example, for phone numbers, accept (519) 555-0199, 5195550199, and
519-555-0199.
If you need to inform users of an error
Carefully consider whether you need to inform users of an error. If you do, do it in the least disruptive way you
can.
Patterns
96
Inline notifications
Inline notifications keep users in the context of a task
and don't force users to respond before continuing.
Examples
A user entered an improperly formatted email
address.
A user entered an incorrect password.
Implementation
Attach the notification to the affected item. You can
add a subtle animation to show where the error is.
Patterns
97
Toasts
Toasts are useful when an inline notification isn’t
possible. Toasts also let users to continue without
stopping what they are doing.
Examples
An image didn't upload successfully.
New messages don't appear because the device isn't
connected to a wireless network.
Implementation
Display a toast on the screen. The toast should
disappear after 3 seconds.
Patterns
98
Dialog boxes
Dialog boxes are essential when users must
acknowledge an error before they can move forward.
Example
Restarting an application.
Use
Display a dialog box that users must respond to
before they can continue.
Best practices
Tell users about errors as soon as you can. If a user enters an incorrect phone number, you can display an
inline notification as soon as they leave the text field.
Patterns
99
Keep action buttons inactive (such as Send, Share, or Next) until users enter the required information and
it's validated.
Suggest a solution. Don't just state the problem; help users recover. For example, a BlackBerry device isn't
connected to a wireless network, you can prompt the user to connect to a Wi-Fi network.
Offer to fix issues that affect performance. If a user has many browser tabs open, you can suggest closing
some tabs to improve browsing.
Don't tell users that an action was successful. Let them feel confident in the success of their actions.
Don't reset values that users enter unless the values are confidential, such as passwords.
Patterns
100
Components
Pickers
Components
101
Use a picker when you want users to choose from two
to three sets of interconnected values, such as the
day, month, and year of an appointment, or the hour
and minute for a timer. You can also use a picker to
simplify a complex UI and reduce the number of
steps in a workflow by allowing users to select
multiple values in one step.
Don't use when
Users need to select from only one set of values. Use
a drop-down list instead.
Drop-down lists
Use a drop-down list when you want users to choose a
single value from a larger set. Drop-down lists can
make complex screens more compact and
streamlined by collapsing many options into one
element.
Don't use when
Users need to choose from two to three sets of
interconnected values, such as the date and time of
an appointment. Use a picker instead.
Best practices for drop-down lists
Use the value users are most likely to choose as the default value.
Don't use "Yes" and "No" as list values. Use a check box instead, and rephrase the option to describe the
action.
Components
102
Lists
A list presents content as list items, usually as an entry point to the next step in the navigation hierarchy. Lists
can be displayed in a stacked or grid layout. To read more about lists, see Screen views.
Best practice for lists
If you use images, populate the list as soon as possible so that list item text appears before all images are
loaded.
Dividers and headers
Use dividers and headers to create a visual hierarchy to separate groups of items that belong together.
Best practices for dividers and headers
Use a divider as a simple visual barrier, to separate items in a container or list.
Use a header to separate sections in a list. A header contains one or two strings to label the section.
Components
103
Buttons
Use a button to initiate an action.
Best practices for buttons
Set the button that users are more likely to tap as the default button. Don't make a button for a
destructive action the default.
Use single-word labels where possible.
Use verbs that describe the associated action, such as "Cancel," "Delete," or "Save."
Text fields and text areas
Use a text field to let users input a single line of text, such as a contact name or a password.
Use a text area to let users input several lines of text, such as a comment or a message.
Learn more about text input in Keyboards and Forms.
Best practices for text fields and text areas
Include hint text in fields so that you need fewer labels. You might need a label if the field has a default
value or if the field's description is too long as hint text.
Components
104
Try to reduce the text users need to type. Let users choose items from pickers when you can. Try to store
and display information that users enter so they don't have to type it repeatedly.
Use word prediction in text fields only with text that is likely in the dictionary, not in password, phone
number, or name fields. The predictions might get in the way in these fields.
Activity and progress indicators
Use an activity and progress indicators to show users that your app is working and to show them the process
and its progress.
Use an activity indicator when you want to show that
your app is working, but you can't determine how long
the process will take.
Use a progress indicator when you can determine how long the process will take.
Learn more about progress and activity indicators.
Best practices for activity and progress indicators
Always indicate progress when a process takes more than 3 seconds to complete.
If list content is being retrieved through the cloud (for example, third-party pictures), populate the list as
content is received so users can interact with the content that's available.
Incorporate an inline solution if you can.
For progress indicators, show users the progress state (for example, "Uploading 5 of 7 pictures,"
"Uploading 2.4/4 Mb," or "4:24").
Components
105
Check boxes, radio buttons, and toggle switches
Use check boxes, radio buttons, and toggle switches to let users select options.
Check boxes
Radio buttons
Use check boxes when users can select multiple
items or options.
Use radio buttons when users can choose among
more than two mutually exclusive options.
Toggle switches
Use a toggle switch when users can choose between two options, such as On and Off. You can also use a
toggle switch if you want to make a setting harder for users to change accidentally.
Components
106
Best practices for check boxes and radio buttons
Create a touch target area for the whole row and label. Check boxes and radio buttons have small visible
areas.
Use positive labels where possible. For example, use Show instead of Hide.
Best practice for toggle switches
Use terms that identify the state of the option, not the action required to change the state. For example,
"On" indicates the current state, but "Turn on" describes an action.
Sliders
Use a slider to control settings with a wide range or to show a preview of the change (for settings like volume
level or screen brightness). You can also use a slider for fast forwarding and rewinding media files.
Users drag the slider from left to right, or double-tap it to jump to predefined increments.
Best practice for sliders
Combine sliders with images or strings that explain the context, such as progress of a media file or the
level of a filter that is being applied to a photo.
Components
107
Touch targets
Users touch the screen with their fingertips, so touch targets (also called hit areas) for UI components should
be large enough for users to use without frustration. If you use BlackBerry UI components, you don’t need to
worry about the size of the touch target for each UI component. The sizes are designed to be large enough for
users to touch with a finger without having to hit the target precisely.
If you create custom UI components, remember that the size of the touch target depends on the ppi of the
screen. If you are designing your app for different BlackBerry devices, create a touch target for the pixel
density of each screen size.
Best practices for custom UI components
Create touch targets. For BlackBerry smartphones, create touch targets that are at least 101 x 101 pixels
(7.2 mm).
Make the size of the touch target larger than the visible UI component. Provide enough space around
each component so that users can initiate an action easily. The extra space provides leniency for users
whose attention is divided or those who are on the go.
For check boxes and radio buttons, create a touch target area for the entire row and the associated label.
These UI components have small visible areas.
Make the size of the release area larger than the visible UI component. The extra space allows for
imprecise interactions, such as when a finger moves after initially touching the screen.
Test the size of each touch target with your users.
Components
108
Highlight behavior
Highlighting helps users identify the item that they're
acting on. The highlight on a component behaves
differently depending on the component and the
context. If you use BlackBerry UI components,
highlighting is built into the component.
Best practices for highlighting
custom components
For binary interactions, highlight the component
when a user touches it. Remove the highlight
when the user moves their finger off the control. The
highlight should return when the control is touched
again, unless the control scrolls with the view.
If users scroll through a list or view (for example,
a grid view), don't highlight individual items.
If an item requires continuous interaction (for
example, a slider), highlight the item until the
user releases their finger. In this case, you might need
to lock other items that allow scrolling, such as lists.
Don't let users highlight items they can't act on.
Disable components by dimming them or remove
them from the screen.
Components
109
Highlighting in action: Touch and hold highlight
Users can touch and hold list and grid items to bring up context menus. To give the user a visual clue that the
context menu will be triggered, the item cycles through a three-step highlight progression:
Grid items
The user begins the touch and hold action. A solid 4pixel border appears around the grid item.
As the user continues to hold, a gradient forms inside
the solid border. This effect is subtle so that the
content of the grid item (which is often a photo) is not
obscured.
As the user releases their finger, a solid 8-pixel border
appears around the grid item and the context menu
appears.
List items
The user begins the touch and hold action. A solid 4
pixel border appears around the list item.
As the user continues to hold, the interior of the list
item begins to fill with a gradient.
Components
110
As the user releases their finger, the fill gradient
solidifies and the context menu appears.
Components
111
Empty states
In some situations, lists may not contain any initial
data because no content is currently available, or the
user hasn't created content yet. This state is called an
empty state.
Best practices
Don't show an empty screen. The app should use
the empty space to promote content creation (for
example, a contact, note, or calendar event) or
prompt the user to initiate a synchronization to
populate the list with content.
Use dummy list items. It can be helpful to include
text prompts and an accompanying image or
control that calls the user to action or explains why
the space is currently empty.
Components
112
Audio and visual style
Color
BlackBerry 10 UI design follows a specific color palette that all apps use by default, but you can brand your
app with a signature color. This use of color can be a dramatic statement because all of the core screen
components can be colorized, except for text selection and fine cursor controls.
Only a single primary reference color is needed to colorize an app. A color algorithm calculates matching base
and highlight colors from that single color value so that your app has a polished look and appealing gradients
throughout. If you want more control over the palette, you have the option of explicitly specifying the base color
yourself.
Look at the palettes below for some good color choices that look nice in both the dark and bright visual
themes. The default BlackBerry 10 primary color is Sky Blue, which is prominently displayed in the action bar's
signature action button.
Audio and visual style
113
Best practices for choosing colors
Consider the bright and dark themes. If your app is designed to run in both themes, your choice of colors
should look good across themes.
Don't go to extremes. Choosing a color that is too dark or too bright might make it difficult for your users to
see screen elements against the black or white background due to lack of contrast.
Think of accessibility. Some of your users might be color blind, which could limit the range of colors they
can see on the screen, making it difficult to see and use certain controls.
Be careful with the base color. In most cases, it is best to define only the primary color and let the system
calculate the base color. Going with the calculated base is a good way to ensure that your intended colors
are retained in future versions of the user interface. If you do want to define a base color, make sure that it is a
similar hue but slightly darker version of your primary color (as shown in the sample palettes).
Keep the default font colors. The white or black font colors should be retained in almost all circumstances
to maintain readability on components such as buttons and title bars.
Audio and visual style
114
Application icons
Designing an icon for your BlackBerry smartphone application lets you showcase your app to BlackBerry
device users. In the BlackBerry World storefront, an icon is the first introduction that users have to your app.
The icon also appears on the home screen as a way for users to open your app.
Your application name label appears below the icon.
Best practices
For devices with a screen resolution of 720 x 720 pixels create an icon that is 90 x 90 pixels.
For devices with a screen resolution of 768 x 1280 pixels create an icon that is 110 x 110 pixels.
For devices with a screen resolution of 720 x 1280 pixels create an icon that is 96 x 96 pixels.
For devices with a screen resolution of 1440 x 1440 pixels create an icon that is 144 x 144 pixels.
Focus on a single iconic metaphor that clearly represents the application. Think of your icon as a road
sign that people understand quickly.
Use a silhouette to differentiate your icon from other icons.
Try to maintain consistency with other BlackBerry application icons in scale, volume, and color palette.
Audio and visual style
115
Basic shapes
App icons are based on basic shapes. Most of the rounded squares and circles used in the UI have exactly
the same size and proportions as the shapes you see below.
Focus area and lighting
If you use a symbol in your icon, make it the same size as the symbols in other BlackBerry application icons.
The symbol should be 62% of the total size of your icon. Note that the lighting source appears to be shining on
the upper left of the icon.
Audio and visual style
116
Color palette
Limit the number of colors that you use in your icon.
The colors shown here are used in BlackBerry
application icons.
Audio and visual style
117
Active Frames
An Active Frame (also called an application cover)
appears on the home screen. Users tap an Active
Frame to re-open the app.
When you are deciding whether to create an Active
Frame for your application, consider the following:
• Is there a single item that users should know about
when the app is minimized (for example, a
calendar shows the next event or a weather app
shows the current temperature)? If so, create an
Active Frame.
• Is it more important for users to see the state of
the app when it is minimized? If so, you don't need
to create an Active Frame. A scaled-down version
of the current app screen displays as the Active
Frame.
Best practices
For smartphones with a 720 x 1280 screen
resolution, create an image that is 319 pixels
Future smartphones with a 1440 x 1440 screen
resolution can display two sizes of Active
Audio and visual style
118
wide by 437 pixels high. A footer appears
automatically and includes the title of your
application. The text appears in Slate Pro Font at
regular weight and is set to 30 pixels high.
For smartphones with a 768 x 1280 screen
resolution, create an image that is 334 pixels
wide by 396 pixels high. A footer appears
automatically and includes the title of your
application. The text appears in Slate Pro Font at
regular weight and is set to 35 pixels high.
For smartphones with a 720 x 720 screen
resolution, create an image that is 310 pixels
wide by 211 pixels high. A footer appears
automatically and includes the title of your
application. The text appears in Slate Pro Font at
regular weight and is set to 30 pixels high.
Frames. Large Active Frames are 440 pixels wide by
486 pixels high. Small Active Frames are 440 pixels
wide by 195 pixels high.
If you add text to the main body of the Active
Frame, use the Slate Pro Font at regular weight
and set it to 35 pixels high. Set secondary text to 30
pixels high. In some cases (for example, with a time
stamp), you can set the font size to 24 pixels high.
Place the most important information near the
top of the Active Frame. Only the top half of the
Active Frame appears on BlackBerry smartphones
with a physical keyboard.
Avoid including too much information on the
Active Frame.
Header
You can make the header a solid color or make it semi-transparent if you want a bigger image.
Use Slate Pro Font at regular weight and set it to 25 pixels high. If you include an avatar, make it 50 x 50 pixels.
For devices with a 720 x 1280 screen resolution
Audio and visual style
119
For devices with a 768 x 1280 screen resolution
For devices with a 720 x 720 screen resolution
Grid
You can lay out images in a grid format.
For devices with a 720 x 1280 screen resolution
Audio and visual style
120
For devices with a 768 x 1280 screen resolution
For devices with a 720 x 720 screen resolution
Small and large-sized Active Frames
See below for examples of a large and small Active Frame, which can be used on future devices with a 1440 x
1440 screen resolution.
A large Active Frame, with a list view
Audio and visual style
121
A small Active Frame, with a grid view
Splash screens
A splash screen appears when a user opens your app.
If you don't define a splash screen, a default
BlackBerry splash screen will appear.
Apps, like people, have only one chance to make a
good first impression, so get creative and make a
splash.
Best practices
Don't crowd the splash screen with too much
content. A simple layout of well-selected, wellplaced elements is best.
Provide useful information. Consider adding
information such as the app version or app
loading progress to your splash screen.
Audio and visual style
122
Earconography sound design
Advanced mobile computing platforms such as
BlackBerry 10 not only include a UI, they also provide
a sonic language that is represented by audio
notifications, event feedback, and system sounds.
BlackBerry 10 is the world's first platform to offer the
universal earconography approach to sound design
for standardized audio notification events. A universal
sound language has existed for decades in the analog
world, for example, door bells, alarms, phone ringers,
and desk bells. Anyone who hears these sounds
knows what is being communicated immediately.
The goal of earconography is to achieve a sonic
language with all audio notification events so that the
user is more informed about the who, what, why, and
when of an event. You can build the same kind of
familiarity with your app's notifications by following
universal sound patterns, but with the aesthetic
freedom of slight sonic variations.
Consider the visual language of a graphical UI. An
icon of an envelope can be different colors, have a
stamp on it (or not), or be tilted 25 degrees, but as
long as it still looks like an envelope, users will know
what it represents. Same story for sounds.
You can build variation into the base sounds easily if
you think of each sound effect as having three layers:
Audio and visual style
123
• X is the fixed structural pattern that identifies a specific earconography sonic event that occurs (for
example, phone, text, or reminder). This is like the structural pattern of Morse code, which is specific and
different for each letter, but isn’t really about sound. Morse code can even be ‘played’ by a light source.
• Y introduces textures and instruments to provide tonal variation and sonic identity to ensure each event is
unique and differentiated from all other notifications in your suite.
• Z is the treatment layer that provides a variable amount of waveform modification. This includes effects
processing such as reverb, delay, modulation, gain, panning, and Doppler. These effects provide more
complexity, indicate urgency, and allow you to customize and personalize the sound.
BlackBerry 10 base sounds
Email messages
A four-note ascending pitch flam (1/16th notes at
200bpm) pattern with equal timing intervals, in the
mid range of the assortment (the default email
notification is G3, D4, G4) with a natural sounding
medium sustain that is not phone-like. The Y-layer
has warm and rich instrumentation, on top of the
baseline brand sound.
BBM
A two-note ascending pitch pattern in a higher range
than email messages (E3, B4) with a moderately tight
release/sustain. On top of the brand baseline
instrument, the Y-layer uses clarity bells to provide
differentiation from the email message notification.
BBM Video
A hybrid notification language, where the universal
ringer is applied to the standard BBM pattern. A twonote descending repeated two times (E4, A3, rest, E3,
A3) with a longer, phone ringer style sustain/release
that is repeated several times like a phone ringer. The
Audio and visual style
124
Y-layer is the same as BBM to associate BBM Video
with BBM.
Text
A one-note, single shot (F#4) with a tight, short
release. The single note is appropriate given the
frequency of text messages. The Y-layer
instrumentation used here could be similar to the
phone notification to associate these two classic cell
phone features.
Phone
A two four-note traditional telephone alternating ring
pattern, with equal timing intervals and duration in
the upper range (G4, D4, G4, D4, G4, D4, G4) and a
longer sustain/release. Additional melodies and
patterns can be explored for additional variations.
The Y-layer should contain high frequency
instrumentation for definition and transmission, as
well as tonal character for fullness and balance.
Timer
An alert with three equally spaced notes of the same
frequency with a super tight sustain/release. Equal
silence is added between repeats, with two repeats
minimum in a higher register range for improved
transmission. (A4, rest, A4, rest, A4). This notification
is stark, with a ‘system-like’ style and sound to
differentiate it from notifications that orginate from an
outside source (for example, phone or messages).
Audio and visual style
125
Reminders
An attention getting alert with a two-note ascending
lead-in of tight release, followed by slower timer
pattern (three equal interval chimes), like the hourly
chimes of a clock in 1/4 notes at 190bpm with a
medium sustain (G3,G4, D4,rest, D4, rest, D4). The
Y-layer effect sounds like a gentle, yet persistent
chime, to create association with existing real-world
reminders, such as the notification tone when a car
door is opened.
Third party/generic
A four-note ascending/descending pattern with the
first note accented, played in a broken rhythm,
differentiated from email/messaging with equal
timing and a moderately tight release (G3, rest G3,
D4, C4). No Y-layer is applied, to avoid confusion with
applications from your brand.
Best practices
Your files should have as little silence as possible at the head and tail of the file. Any silence should be
uniform to promote a linear playback performance.
Pushed notification effects should be .m4a format, with a 48 khz sampling rate, and should use either a
constant or average bit rate of no lower than 128 kbps.
UI feedback effects should be full-resolution .wav format in order to achieve low latency playback for
responsive user feedback.
A good use of sounds is a rare use of sounds. Don't include feedback for something that happens every
few seconds in your app, like the movement from one screen to another, or the activation of a control.
Above all, your notifications should not be annoying. Choose instrumentation, pitch, and volume that can
be heard several times a day without annoying the user.
In-app icons
The design of your app's icons is especially important because they are the main ways that your user triggers
your app's most essential features. Check out the types of icons that you can create, how to build and style
your icons, and tips and tricks for getting the most from the icons in your application.
Audio and visual style
126
Themes
Some BlackBerry devices feature an OLED display that uses a dark version of the standard BlackBerry 10
theme. Here are examples of in-app icons used in the light and dark themes:
Light theme
Dark theme
Creating icons
The process below describes the main steps you can follow to create your icons.
Step 1
Find an appropriate metaphor for the function or physical object that the icon should represent. Try out
different variations and pick the one that's easiest to recognize.
Step 2
Create the icon shapes using the information in Metaphors. Use a vector application (such as Adobe
Illustrator) and apply the information from Building blocks.
Note where your icon appears in the UI and set up the artboard in your design application accordingly. Use
pixel units and make sure you use pixel snapping.
Audio and visual style
127
Step 3
Import the shape to a pixel application (such as Adobe Photoshop) and keep it as a shape layer. Use snapping
and make sure that straight edges are sharp and aligned. If you don't use snapping, nudge the shape points to
avoid blurry edges.
Make sure that you set the canvas to the correct width and height.
Apply the treatment rules from the Building blocks topic and save the image as PNG-24 with transparency.
Step 4
Test the icon with other icons, comparing the weight and style.
Put the icon on a BlackBerry device and test it in context.
Types and sizes
BlackBerry smartphones use different sizes for in-app icons and indicators.
Keep the main graphical elements within the inner area of the icon or indicator to allow for a UI buffer zone.
The focal area refers to the size of the symbol within the icon itself.
Action bar and menu icons
Large icons
8 x 8 du (focal area 5.5 x 5.5 du)
Large icons are the most common. Apps use them most often in these UI contexts:
Audio and visual style
128
Action bar with tab icons
Action menu icons
Audio and visual style
129
Tab menu icons
Content area icons
Audio and visual style
130
Application menu icons
Context menu icons
Audio and visual style
131
Components and small buttons
Medium icons
Use the medium icon size for components.
7 x 7 du (focal area 4.5 x 4.5 du).
Small icons
Use the small icon size for small buttons.
6 x 6 du (focal area 4.5 x 4.5 du)
Audio and visual style
132
Indicators
Indicators are small icons used in the content area to show extra information (for example, status). If you
create an indicator, follow the design guidelines for icons listed above. Reduce the amount of detail, and
reduce the number of pixels by one for the largest lines. Follow the size and alignment guidelines below:
Audio and visual style
133
Large indicators
5 x 4 du
Small indicators
3 x 3 du
Audio and visual style
134
Alignment
Not recommended: The first indicator is not bottomRecommended: Make indicators smaller than the
adjacent text. Bottom-align indicators to the baseline. aligned. The second indicator is larger than the text.
Metaphors
Icons should be pictorial and convey meaning through a resemblance to a physical object or function. When
you design the icons for your app, create them with a professional and premium design that is authentic and
uses natural dimensions. Icons should be:
• Modern
• Highly recognizable
• Single-colored
• High contrast
• Low-to-mid detailed
• Equally weighted
In addition, consider the following guidelines:
Resemblance
Make sure that the outline and shape of the icon resemble the physical object or its function as much as
possible. Stay true to the meaning of the icon. Focus on the key outlines of common objects. In most cases,
this approach makes the icon highly recognizable. The result should stand on its own, without any explanatory
text.
Audio and visual style
135
Recommended
Not recommended
Viewing angle
To make an icon highly recognizable, design it so that it is viewed from one side only. In general, don't use
angles or rotations. Icons should not use any 3-D perspective, but can be aligned to 45° to fill the focal area.
This approach results in a more balanced icon weight.
Recommended
Not recommended
Audio and visual style
136
Recommended
Not recommended
Focus
It is very important to emphasize the meaning of the function or object by setting focus on the correct part of
the icon, especially for icons that are composed of more than one object. You can set the focus by making an
object within the icon heavier than the rest of the parts. In most cases, make the foremost object the heaviest
element. Icons treated this way are balanced with the surrounding icons.
No focus
Recommended
Too much focus
Level of detail
Icons should be as simple as possible. However, with the high resolution screens of modern smartphones, you
can add detail to make the icons appear more recognizable, crafted, and professional.
Audio and visual style
137
Avoid adding detail for the sake of adding detail. Add detail where it makes sense and where it enhances the
readability of the icon. A high density of detail can make an icon cluttered. Not enough detail might make the
icon unrecognizable. The golden rule is to keep detail to a minimum without losing the characteristics of the
icon.
Too little detail
Recommended
Too much detail
Building blocks
Focus
Try to keep the majority of the icon shape within the
focal area to create balance among icons.
In some cases, an icon might need to expand into the
safe frame to include a common shape, splat
indicator or text.
Audio and visual style
138
Recommended
Not recommended
Splat indicators
Splat indicators can overlay the top-right corner of an
icon. Text can overlay the bottom center of an icon.
Audio and visual style
139
Treatment
Add a subtle gradient to icons.
To keep the icon as sharp as possible, don't use extra effects. Don't use colors for the enabled state (except
the content area icons).
Enabled on a bright background
Top of the gradient:
• Hex #4F4F4F
• R 79 G 79 B 79
Bottom of the gradient:
• Hex #363636
• R 54 G 54 B 54
The disabled state is at 50% opacity.
Enabled on a dark background
Top of the gradient:
• Hex #E3E3E3
• R 227 G 227 B 227
Bottom of the gradient:
• Hex #D1D1D1
• R 209 G 209 B 209
The disabled state is at 50% opacity.
Audio and visual style
140
Selected
Top of the gradient:
• Hex #3CBCE7
• R 60 G 188 B 231
Bottom of the gradient:
• Hex #01A8DF
• R 1 G 168 B 223
The disabled state is at 50% opacity.
Colors
Use color for content area icons only. Stay true to the color palette and imitate the gradient values to keep the
design coherent.
Hex: #00B800
Hex: #E6B400
Use: Positive, action, and Use: Attention
start
Hex: #D60000
Hex: #00A8DF
Use: Warning, stop, and
error
Use: Selection and
information
Audio and visual style
141
Shapes and lines
You can create icons in any shape as long as the silhouette is simple, clear, and true to the metaphor. The
silhouette must be a minimum of 4 pixels at the thinnest part to clearly define the outer part of the icon. Detail
in the icon can be smaller and narrower (a minimum of 2 pixels).
Round the outer corners slightly, but keep the shape as close as possible to the object or function that it
represents. Round line caps according to the thickness of the line. Keep arrow stems hard.
Cuts and objects
If you divide an icon into multiple objects, include a 3-pixel gap to separate the objects. The gap should be
equally thick along the foremost object. To maintain readability and minimize clutter, your icon should not
contain more than three objects.
If an icon contains duplicate objects, the foremost object should be bigger than the object portrayed in the
back. The back object should be 15% smaller, but maintain the line and silhouette thickness.
Common shapes
You can add common shapes to icons to indicate functionality or direction, as a complement to the metaphor.
The function should be the icon itself, but in some cases, add-ons strengthen the purpose of the icon.
Delete
Favorite
Add
Search
Play
Mail
Send
Secure
Audio and visual style
142
Contact
Edit
Move left/back
Attach
The default placement of common shapes is at the bottom right corner. Depending on the shape of the main
icon, you might need to adjust the add-on vertically so that the add-on looks like a separate object.
Recommended: A Forward folder
icon with correct positioning of the
common shape.
Not recommended: The forward
shape is placed incorrectly. Stay
true to the logic of forward and
backward.
Not recommended: The main icon
and the common shape look like
the same object.
On and off states
Icons that appear in on and off states follow the same rules across the UI. You can define the off state by
adding a crossbar at 45 degrees with a cut-out shadow in negative space to enhance the bar. The crossbar
extends equally beyond the main shape past the bottom-left corner and the top-right corner.
Audio and visual style
143
On
Off
Delete, close, and cancel
Delete: Use Delete when
something is completely removed
from the system (for example, files,
images, and applications).
Close: Use Close when part of
something is removed (for
example, a window, list item, or an
instance in a group selection).
Cancel: Use Cancel for a behavior
(for example, if a user edits
something and doesn't want to
save the changes, provide the
option to cancel).
Audio and visual style
144
Transitions
It's a good practice to create a UI experience that is
both functional and usable-meaning that users can
understand and carry out actions in an application.
However, in today's competitive market, you might
want to create an application that is more than just
functional and usable. One way is to create an
experience that strikes an emotional chord with your
users.
Incorporating transitions (animations) into your
application can help strike that chord. You want users
to create an emotional bond with your application and
enjoy using it. Strike a balance between performance
and emotion.
Best practices
Make transitions sequential. A simple, efficient
transition helps users make sense of what's
happening more quickly.
Compound transitions. Like a symphony,
compounded effects can trigger more of an
emotional response than a single effect. A
combination of transitions looks sophisticated and
can really impress users. Too much of a good thing
can be overwhelming, however, so try to limit the
number of transitions to two per element.
Make transitions interactive. You can create an
emotional effect when user actions trigger
transitions.
Fuse the smart and the beautiful. The combination of these two virtues always impresses.
Audio and visual style
145
Designing for OLED displays
Some BlackBerry smartphones have an OLED screen instead of a traditional LCD screen. From a visual design
perspective, this type of screen has higher contrast and clarity than an LCD screen. However, the lighter the
image on the screen, the more power the device consumes.
Additionally, brighter pixels burn down faster which can cause an undesirable screen effect called burn-in,
where pixels lose their luminosity and color vibrancy over time. Think of each OLED pixel as a candle. When
you burn a candle, it burns down slowly and never recovers. The higher the flame on the candle, the faster it
burns down.
Audio and visual style
146
Best practices for optimizing battery life and reducing screen burn-in
Adapt your color scheme. Bright colors and UI components in static positions (for example, title bars and
action bars) can increase screen burn-in. The darker an image is, the less power it uses. Try and use a black
theme and adjust light backgrounds to use less power while still preserving readability.
Consider removing subtle patterns and textures. Use pure black where possible. Using pure black also
allows you to blend the UI with the black hardware elements that surround it.
Typography
Slate Pro Font is the preferred font for the BlackBerry 10 smartphones because it is elegant and legible,
allowing users to access information quickly and easily.
BlackBerry 10 uses medium, regular, and light font weights, as well as light italic type. BlackBerry 10 uses
extra, extra small to large font sizes. The extra large and extra, extra large sizes are CSS standards for font
scaling.
Audio and visual style
147
Slate Pro Font medium
Slate Pro Font regular
Slate Pro Font light
Slate Pro Font light italic
The following information shows the colors for text on bright and dark backgrounds:
Audio and visual style
148
Visual asset sizing chart
The following chart shows the pixel dimensions of
common visual assets for various BlackBerry 10
devices. Click the column headings for more
information. See Design units for measurement on
page 19 for more information on du measurements
and conversion.
Device-specific elements
Model
Screen
resolution
and
density
BlackBerry Z10 smartphone
768 x 1280 110 x 110
pixels
Porsche Design P’9982 smartphone from BlackBerry
BlackBerry Z30 smartphone
BlackBerry Z3 smartphone
App icon size
(pixels)
Active Frames
size (pixels)
334 x 396
356 ppi
720 x 1280 96 x 96
pixels*
319 x 437
295 ppi*
Audio and visual style
149
Model
Screen
resolution
and
density
App icon size
(pixels)
Active Frames
size (pixels)
90 x 90
310 x 211
*Emulated
screen
dimensions
for
BlackBerry
Z3
BlackBerry Q10 smartphone
Porsche Design P'9983 smartphone from BlackBerry
BlackBerry Q5 smartphone
BlackBerry Passport smartphone
720 x 720
pixels
330 ppi
1440 x
144 x 144
1440 pixels
Two sizes are
supported:
453 ppi
Large: 440 x 486
Small: 440 x 195
BlackBerry Classic smartphone
720 x 720
pixels
90 x 90
310 x 211
294 ppi
Common elements
In-app icon sizes:
The focal area refers to the size of the symbol within the icon itself.
• Action bar and menu icons (large): 8 x 8 du (focal area 5.5 x 5.5 du).
• Components (medium): 7 x 7 du (focal area 4.5 x 4.5 du).
• Small buttons (small): 6 x 6 du (focal area 4.5 x 4.5 du).
Indicator sizes:
• Large: 5 x 4 du
• Small: 3 x 3 du
Audio and visual style
150
Legal notice
©2014 BlackBerry. All rights reserved. BlackBerry® and related trademarks, names, and logos are the
property of BlackBerry Limited and are registered and/or used in the U.S. and countries around the world.
Adobe, Adobe Illustrator, and Photoshop are trademarks of Adobe Systems Incorporated. Bluetoothis a
trademark of Bluetooth SIG. Facebook and the Facebook logo is a trademark of Facebook, Inc. Slate Pro Font
is a trademark of Monotype Imaging Inc. and may be registered in certain jurisdictions. Twitter is a trademark
of Twitter, Inc. Wi-Fi is a trademark of the Wi-Fi Alliance. All other trademarks are the property of their
respective owners.
This documentation including all documentation incorporated by reference herein such as documentation
provided or made available at www.blackberry.com/go/docs is provided or made accessible "AS IS" and "AS
AVAILABLE" and without condition, endorsement, guarantee, representation, or warranty of any kind by
BlackBerry Limited and its affiliated companies ("BlackBerry") and BlackBerry assumes no responsibility for
any typographical, technical, or other inaccuracies, errors, or omissions in this documentation. In order to
protect BlackBerry proprietary and confidential information and/or trade secrets, this documentation may
describe some aspects of BlackBerry technology in generalized terms. BlackBerry reserves the right to
periodically change information that is contained in this documentation; however, BlackBerry makes no
commitment to provide any such changes, updates, enhancements, or other additions to this documentation
to you in a timely manner or at all.
This documentation might contain references to third-party sources of information, hardware or software,
products or services including components and content such as content protected by copyright and/or thirdparty web sites (collectively the "Third Party Products and Services"). BlackBerry does not control, and is not
responsible for, any Third Party Products and Services including, without limitation the content, accuracy,
copyright compliance, compatibility, performance, trustworthiness, legality, decency, links, or any other
aspect of Third Party Products and Services. The inclusion of a reference to Third Party Products and Services
in this documentation does not imply endorsement by BlackBerry of the Third Party Products and Services or
the third party in any way.
EXCEPT TO THE EXTENT SPECIFICALLY PROHIBITED BY APPLICABLE LAW IN YOUR JURISDICTION, ALL
CONDITIONS, ENDORSEMENTS, GUARANTEES, REPRESENTATIONS, OR WARRANTIES OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY CONDITIONS, ENDORSEMENTS,
GUARANTEES, REPRESENTATIONS OR WARRANTIES OF DURABILITY, FITNESS FOR A PARTICULAR
PURPOSE OR USE, MERCHANTABILITY, MERCHANTABLE QUALITY, NON-INFRINGEMENT, SATISFACTORY
QUALITY, OR TITLE, OR ARISING FROM A STATUTE OR CUSTOM OR A COURSE OF DEALING OR USAGE OF
TRADE, OR RELATED TO THE DOCUMENTATION OR ITS USE, OR PERFORMANCE OR NON-PERFORMANCE
OF ANY SOFTWARE, HARDWARE, SERVICE, OR ANY THIRD PARTY PRODUCTS AND SERVICES
REFERENCED HEREIN, ARE HEREBY EXCLUDED. YOU MAY ALSO HAVE OTHER RIGHTS THAT VARY BY
STATE OR PROVINCE. SOME JURISDICTIONS MAY NOT ALLOW THE EXCLUSION OR LIMITATION OF
IMPLIED WARRANTIES AND CONDITIONS. TO THE EXTENT PERMITTED BY LAW, ANY IMPLIED
WARRANTIES OR CONDITIONS RELATING TO THE DOCUMENTATION TO THE EXTENT THEY CANNOT BE
EXCLUDED AS SET OUT ABOVE, BUT CAN BE LIMITED, ARE HEREBY LIMITED TO NINETY (90) DAYS FROM
Legal notice
151
THE DATE YOU FIRST ACQUIRED THE DOCUMENTATION OR THE ITEM THAT IS THE SUBJECT OF THE
CLAIM.
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN YOUR JURISDICTION, IN NO EVENT SHALL
BLACKBERRY BE LIABLE FOR ANY TYPE OF DAMAGES RELATED TO THIS DOCUMENTATION OR ITS USE,
OR PERFORMANCE OR NON-PERFORMANCE OF ANY SOFTWARE, HARDWARE, SERVICE, OR ANY THIRD
PARTY PRODUCTS AND SERVICES REFERENCED HEREIN INCLUDING WITHOUT LIMITATION ANY OF THE
FOLLOWING DAMAGES: DIRECT, CONSEQUENTIAL, EXEMPLARY, INCIDENTAL, INDIRECT, SPECIAL,
PUNITIVE, OR AGGRAVATED DAMAGES, DAMAGES FOR LOSS OF PROFITS OR REVENUES, FAILURE TO
REALIZE ANY EXPECTED SAVINGS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, LOSS
OF BUSINESS OPPORTUNITY, OR CORRUPTION OR LOSS OF DATA, FAILURES TO TRANSMIT OR RECEIVE
ANY DATA, PROBLEMS ASSOCIATED WITH ANY APPLICATIONS USED IN CONJUNCTION WITH
BLACKBERRY PRODUCTS OR SERVICES, DOWNTIME COSTS, LOSS OF THE USE OF BLACKBERRY
PRODUCTS OR SERVICES OR ANY PORTION THEREOF OR OF ANY AIRTIME SERVICES, COST OF
SUBSTITUTE GOODS, COSTS OF COVER, FACILITIES OR SERVICES, COST OF CAPITAL, OR OTHER SIMILAR
PECUNIARY LOSSES, WHETHER OR NOT SUCH DAMAGES WERE FORESEEN OR UNFORESEEN, AND EVEN
IF BLACKBERRY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN YOUR JURISDICTION, BLACKBERRY
SHALL HAVE NO OTHER OBLIGATION, DUTY, OR LIABILITY WHATSOEVER IN CONTRACT, TORT, OR
OTHERWISE TO YOU INCLUDING ANY LIABILITY FOR NEGLIGENCE OR STRICT LIABILITY.
THE LIMITATIONS, EXCLUSIONS, AND DISCLAIMERS HEREIN SHALL APPLY: (A) IRRESPECTIVE OF THE
NATURE OF THE CAUSE OF ACTION, DEMAND, OR ACTION BY YOU INCLUDING BUT NOT LIMITED TO
BREACH OF CONTRACT, NEGLIGENCE, TORT, STRICT LIABILITY OR ANY OTHER LEGAL THEORY AND
SHALL SURVIVE A FUNDAMENTAL BREACH OR BREACHES OR THE FAILURE OF THE ESSENTIAL PURPOSE
OF THIS AGREEMENT OR OF ANY REMEDY CONTAINED HEREIN; AND (B) TO BLACKBERRY AND ITS
AFFILIATED COMPANIES, THEIR SUCCESSORS, ASSIGNS, AGENTS, SUPPLIERS (INCLUDING AIRTIME
SERVICE PROVIDERS), AUTHORIZED BLACKBERRY DISTRIBUTORS (ALSO INCLUDING AIRTIME SERVICE
PROVIDERS) AND THEIR RESPECTIVE DIRECTORS, EMPLOYEES, AND INDEPENDENT CONTRACTORS.
IN ADDITION TO THE LIMITATIONS AND EXCLUSIONS SET OUT ABOVE, IN NO EVENT SHALL ANY
DIRECTOR, EMPLOYEE, AGENT, DISTRIBUTOR, SUPPLIER, INDEPENDENT CONTRACTOR OF BLACKBERRY
OR ANY AFFILIATES OF BLACKBERRY HAVE ANY LIABILITY ARISING FROM OR RELATED TO THE
DOCUMENTATION.
Prior to subscribing for, installing, or using any Third Party Products and Services, it is your responsibility to
ensure that your airtime service provider has agreed to support all of their features. Some airtime service
providers might not offer Internet browsing functionality with a subscription to the BlackBerry® Internet
Service. Check with your service provider for availability, roaming arrangements, service plans and features.
Installation or use of Third Party Products and Services with BlackBerry's products and services may require
one or more patent, trademark, copyright, or other licenses in order to avoid infringement or violation of third
party rights. You are solely responsible for determining whether to use Third Party Products and Services and if
any third party licenses are required to do so. If required you are responsible for acquiring them. You should
not install or use Third Party Products and Services until all necessary licenses have been acquired. Any Third
Party Products and Services that are provided with BlackBerry's products and services are provided as a
convenience to you and are provided "AS IS" with no express or implied conditions, endorsements,
Legal notice
152
guarantees, representations, or warranties of any kind by BlackBerry and BlackBerry assumes no liability
whatsoever, in relation thereto. Your use of Third Party Products and Services shall be governed by and subject
to you agreeing to the terms of separate licenses and other agreements applicable thereto with third parties,
except to the extent expressly covered by a license or other agreement with BlackBerry.
Certain features outlined in this documentation require a minimum version of BlackBerry® Enterprise Server,
BlackBerry® Desktop Software, and/or BlackBerry® Device Software.
The terms of use of any BlackBerry product or service are set out in a separate license or other agreement with
BlackBerry applicable thereto. NOTHING IN THIS DOCUMENTATION IS INTENDED TO SUPERSEDE ANY
EXPRESS WRITTEN AGREEMENTS OR WARRANTIES PROVIDED BY BLACKBERRY FOR PORTIONS OF ANY
BLACKBERRY PRODUCT OR SERVICE OTHER THAN THIS DOCUMENTATION.
BlackBerry Limited
2200 University Avenue East
Waterloo, Ontario
Canada N2K 0A7
BlackBerry UK Limited
200 Bath Road
Slough, Berkshire SL1 3XE
United Kingdom
Published in Canada
Legal notice
153
Legal notice
154