|
1 <?xml version="1.0" encoding="utf-8"?> |
|
2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. --> |
|
3 <!-- This component and the accompanying materials are made available under the terms of the License |
|
4 "Eclipse Public License v1.0" which accompanies this distribution, |
|
5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". --> |
|
6 <!-- Initial Contributors: |
|
7 Nokia Corporation - initial contribution. |
|
8 Contributors: |
|
9 --> <!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"><concept id="GUID-B02C762B-C452-4184-ABEA-4753E6CD47D2" xml:lang="en"><title>Scalability</title><prolog><metadata><keywords></keywords></metadata></prolog><conbody> |
|
10 <p>The term <i>scalability</i> refers to the ability of an application |
|
11 UI to function as designed in mobile devices with different screen resolutions |
|
12 or orientations. For example, in the figure below, the UI scales to fit both |
|
13 portrait and landscape orientations.</p> |
|
14 <fig id="GUID-573B32DC-5C53-47B2-8239-AA038E945E81"><title>Scaling</title><image href="GUID-5F9E2762-855A-4DE6-A11B-A5F0D51E19D9_d0e67243_href.png"></image></fig> |
|
15 <p>When you enable scaling in your application, you allow your application |
|
16 to support the different display sizes, resolutions, and layouts for different |
|
17 devices based on the Symbian platform. The Symbian platform provides APIs |
|
18 and other support to enable scaling in applications. Some scaling issues are |
|
19 handled by the application framework if support is enabled, while other issues |
|
20 need to be handled by the application. The details of what can be handled |
|
21 where depend on the nature of your UI architecture. A general rule of thumb |
|
22 is that the greater the degree of customization in your application, the more |
|
23 you need to handle scalability issues in the application.</p> |
|
24 <p>You are not required to enable scaling in your applications, although |
|
25 it is recommended as it enhances usability for mobile device users.</p> |
|
26 <p>The following issues should be kept in mind when enabling your application |
|
27 for scaling:</p> |
|
28 <ul> |
|
29 <li><p>Layout information should not be hard-coded.</p> |
|
30 <itemgroup> |
|
31 <p> The Symbian platform provides the <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classAknLayoutUtils.html" format="application/java-archive"><parmname>AknLayoutUtils</parmname></xref> class |
|
32 for building layouts from resource files.</p> |
|
33 <p>Note that you also need to <xref href="GUID-DD15F24B-0786-4531-A6C5-A5E70EBE2732.dita">override <parmname>CCoeControl::HandleResourceChange</parmname> and <parmname>CEikAppUi::HandleResourceChangeL</parmname></xref> in your |
|
34 application to draw your application again in the event that the orientation |
|
35 of the display changes.</p> |
|
36 </itemgroup> |
|
37 </li> |
|
38 <li><p>Scalable fonts should be used.</p> |
|
39 <itemgroup> |
|
40 <p>The Symbian platform provides methods in the <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classAknLayoutUtils.html" format="application/java-archive"><parmname>AknLayoutUtils</parmname></xref> for |
|
41 using logical fonts from an enumeration in the avkon.hrh file.</p> |
|
42 </itemgroup> |
|
43 </li> |
|
44 <li><p>Scalable icons should be used.</p> |
|
45 <itemgroup> |
|
46 <p>Scalable icons are based on SVG Tiny (SVG-T) format <xref href="GUID-D76B1001-BAF5-4557-A07E-61065523ECBE.dita">graphics</xref>.</p> |
|
47 </itemgroup> |
|
48 </li> |
|
49 </ul> |
|
50 </conbody></concept> |