Symbian3/SDK/Source/GUID-B02C762B-C452-4184-ABEA-4753E6CD47D2.dita
changeset 7 51a74ef9ed63
child 8 ae94777fff8f
equal deleted inserted replaced
6:43e37759235e 7:51a74ef9ed63
       
     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 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-B02C762B-C452-4184-ABEA-4753E6CD47D2" xml:lang="en"><title>Scalability</title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    13 <p>The term <i>scalability</i> refers to the ability of an application
       
    14 UI to function as designed in mobile devices with different screen resolutions
       
    15 or orientations. For example, in the figure below, the UI scales to fit both
       
    16 portrait and landscape orientations.</p>
       
    17 <fig id="GUID-D889D539-AD96-4E67-A52A-EC14FF98E299"><title>Scaling</title><image href="GUID-A69D2707-CB47-42C2-A6E9-5FB9BD86A30B_d0e46132_href.png"/></fig>
       
    18 <p>When you enable scaling in your application, you allow your application
       
    19 to support the different display sizes, resolutions, and layouts for different
       
    20 devices based on the Symbian platform. The Symbian platform provides APIs
       
    21 and other support to enable scaling in applications. Some scaling issues are
       
    22 handled by the application framework if support is enabled, while other issues
       
    23 need to be handled by the application. The details of what can be handled
       
    24 where depend on the nature of your UI architecture. A general rule of thumb
       
    25 is that the greater the degree of customization in your application, the more
       
    26 you need to handle scalability issues in the application.</p>
       
    27 <p>You are not required to enable scaling in your applications, although
       
    28 it is recommended as it enhances usability for mobile device users.</p>
       
    29 <p>The following issues should be kept in mind when enabling your application
       
    30 for scaling:</p>
       
    31 <ul>
       
    32 <li><p>Layout information should not be hard-coded.</p>
       
    33 <itemgroup>
       
    34 <p> The Symbian platform provides the <parmname>AknLayoutUtils</parmname> class
       
    35 for building layouts from resource files.</p>
       
    36 <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
       
    37 application to draw your application again in the event that the orientation
       
    38 of the display changes.</p>
       
    39 </itemgroup>
       
    40 </li>
       
    41 <li><p>Scalable fonts should be used.</p>
       
    42 <itemgroup>
       
    43 <p>The Symbian platform provides methods in the <parmname>AknLayoutUtils</parmname> for
       
    44 using logical fonts from an enumeration in the <parmname>avkon.hrh</parmname> file.</p>
       
    45 </itemgroup>
       
    46 </li>
       
    47 <li><p>Scalable icons should be used.</p>
       
    48 <itemgroup>
       
    49 <p>Scalable icons are based on SVG Tiny (SVG-T) format <xref href="GUID-D76B1001-BAF5-4557-A07E-61065523ECBE.dita">graphics</xref>.</p>
       
    50 </itemgroup>
       
    51 </li>
       
    52 </ul>
       
    53 </conbody></concept>