IOS 7 UI Transition Guide-Support for iOS 6 (iOS 7 UI Transition Guide-Supporting iOS 6)

Source: Internet
Author: User

IOS 7 UI Transition Guide-Support for iOS 6 (iOS 7 UI Transition Guide-Supporting iOS 6)

IOS 7 UI Transition Guide

  • Preparing for Transition
    • Before You Start
    • Scoping the Project
    • Supporting iOS 6
      • Updating the UI
        • Appearance and Behavior
        • Bars and Bar Buttons
        • Content Views
        • Controls
        • Temporary Views


          Supporting iOS 6

          If business reasons require you to continue supporting iOS 6 or earlier, you need to choose the most practical way to update the app for iOS 7. the techniques you choose can differ, but the overall advice remains the same: First, focus on redesigning the app for iOS 7. then-if the redesign events des navigational or structural changes-bring these changes to the iOS 6 version as appropriate (don't restyle the iOS 6 version of the app to use iOS 7 design elements, such as translucent bars or borderless bar buttons ).

          NOTE

          On a device running iOS 7, all of the system UI-such as alerts and notifications-uses the iOS 7 appearance, even if your app is currently using an earlier appearance.

          Using Interface Builder to Support Multiple App Versions

          Interface Builder in Xcode 5 between des new features that help you transition an app to iOS 7 while continuing to support earlier versions.

          Get a preview of how the UI updates you make affect an earlier version.Using the assistant editor, you can make changes to an iOS 7 storyboard or XIB file on the canvas and simultaneously see how those changes look in the iOS 6 version of the file.

          Follow these steps to preview an earlier storyboard or XIB file:

          1. While viewing the iOS 7 storyboard or XIB file on the canvas, open the assistant editor.

          2. Open the Assistant pop-up menu. (The Assistant pop-up menu is the first item to the right of the back and forward arrows in the assistant editor jump bar .)

          3. In the menu, scroll to the Preview item and choose the storyboard or XIB file.

            Toggle between viewing app UI in iOS 7 and iOS 6.1 or earlier.If your app needs to support iOS 6.1 or earlier, use this feature to make sure the UI looks correct in all versions of the app.

            Follow these steps to switch between two versions of the UI:

            1. Open the File inspector in Interface Builder.

            2. Open the "View as" menu.

            3. Choose the version of the UI you want to view.

              For more information about new Interface Builder features in Xcode 5, seeWhat's New in Xcode.

          Supporting Two Versions of a Standard App

          If both versions of a standard app shoshould have a similar layout, use Auto Layout to create a UI that works correctly in both versions of iOS. to support multiple versions of iOS, specify a single set of constraints that Auto Layout can use to adjust the views and controls in the storyboard or XIB files (to learn more about constraints, see Constraints Express Relationships Between Views ).

          If both versions of a standard app shoshould have a similar layout and you're not using Auto Layout, use offsets. to use offsets, first update the UI for iOS 7. next, use the assistant editor to get a preview of how the changes affect the earlier version (to open the preview, select the Preview item in the Assistant pop-up menu as described in Using Interface Builder to Support Multiple App Versions ). then, specify values that define the origin, height, and width of each element in the earlier UI as offsets from the element's new position in the iOS 7 UI. for example, the y position of the text view shown below wowould have to change by 18 points in the earlier version of the UI to accommodate the greater height of the iOS 6 segmented control.

          To learn more about Auto Layout, seeAuto Layout Guide.

          Managing Multiple Images in a Hybrid App

          Hybrid apps often include custom image assets, such as bar button icons, and background views for bars or other controls. apps can use one or more asset catalogs to manage these resources. (To learn more about asset catalogs, seeAsset Catalog Help.)

          NOTE

          An asset catalog contains resources that are displayed within an app; an asset catalog doesn' t hold the app icon, launch image, or any other image that an outside process needs to access.

          In a hybrid app that must support multiple versions of iOS, you manage the images yourself. images that differ depending on an app's version shocould have unique names; otherwise, you can use the same image in both versions.

          If your storyboard or XIB file contains an embedded image, consider creating an outlet to the image view and loading the appropriate resource as needed. to learn how to load different assets in code, see Loading Resources Conditionally.

          Loading Resources Conditionally

          In some cases, you need to determine the iOS version your app is currently running in so you can respond to version differences appropriately in code. for example, if different versions of an app use significantly different layouts, you can load different storyboard or XIB files for each version. you may also need to use different code paths to handle API differences, such usingbarTintColorInsteadtintColorTo tint a bar's background.

          NOTE

          In iOS 7, an app can use a different launch image depending on which version of iOS it's running in. To provide different launch images, addUILaunchImagesKey toInfo.plistFile and use a dictionary to describe each launch image. To learn more about handling launch images, see App Launch (Default) Images inApp Programming Guide for iOS.

          If you need to load different resources for different app versions-and you currently identify a storyboard or XIB file in yourInfo.plistFile-you can use the version of the Foundation framework to determine the current system version and load the appropriate resource inapplication:didFinishLaunchingWithOptions:. The code below shows how to check the Foundation framework version:

          • if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_6_1) {
          • // Load resources for iOS 6.1 or earlier
          • } else {
          • // Load resources for iOS 7 or later
          • }





Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.