Add support dark mode and macOS, and update to Swift 5.

This commit is contained in:
Apple 2019-06-19 12:29:18 -08:00
parent d2cc0bb696
commit 2fe0d9319a
90 changed files with 1090 additions and 849 deletions

13
.gitignore vendored
View file

@ -7,4 +7,15 @@
# Xcode - User files
xcuserdata/
*.xcworkspace
**/*.xcodeproj/project.xcworkspace/*
!**/*.xcodeproj/project.xcworkspace/xcshareddata
**/*.xcodeproj/project.xcworkspace/xcshareddata/*
!**/*.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
**/*.playground/playground.xcworkspace/*
!**/*.playground/playground.xcworkspace/xcshareddata
**/*.playground/playground.xcworkspace/xcshareddata/*
!**/*.playground/playground.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings

View file

@ -1,4 +1,4 @@
Copyright © 2018 Apple Inc.
Copyright © 2019 Apple Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

View file

@ -1,4 +1,4 @@
# UIKitCatalog: Creating and Customizing Views and Controls
# UIKit Catalog: Creating and Customizing Views and Controls
Customize your app's user interface by using views and controls in UIKit.
@ -96,8 +96,12 @@ func configureCustomSlider() {
let rightTrackImage = UIImage(named: "slider_green_track")
customSlider.setMaximumTrackImage(rightTrackImage, for: .normal)
let thumbImage = UIImage(named: "slider_thumb")
// Set the sliding thumb image (normal and highlighted).
let thumbImageConfig = UIImage.SymbolConfiguration(scale: .large)
let thumbImage = UIImage(systemName: "circle.fill", withConfiguration: thumbImageConfig)
customSlider.setThumbImage(thumbImage, for: .normal)
let thumbImageHighlighted = UIImage(systemName: "circle", withConfiguration: thumbImageConfig)
customSlider.setThumbImage(thumbImageHighlighted, for: .highlighted)
customSlider.minimumValue = 0
customSlider.maximumValue = 100
@ -125,16 +129,16 @@ func configureSearchBar() {
searchBar.showsCancelButton = true
searchBar.showsBookmarkButton = true
searchBar.tintColor = UIColor(named: "Tint_Purple_Color")
searchBar.tintColor = UIColor.systemPurple
searchBar.backgroundImage = UIImage(named: "search_bar_background")
// Set the bookmark image for both normal and highlighted states.
let bookmarkImage = #imageLiteral(resourceName: "bookmark_icon")
searchBar.setImage(bookmarkImage, for: .bookmark, state: .normal)
let bookImage = UIImage(systemName: "bookmark")
searchBar.setImage(bookImage, for: .bookmark, state: .normal)
let bookmarkHighlightedImage = #imageLiteral(resourceName: "bookmark_icon_highlighted")
searchBar.setImage(bookmarkHighlightedImage, for: .bookmark, state: .highlighted)
let bookFillImage = UIImage(systemName: "bookmark.fill")
searchBar.setImage(bookFillImage, for: .bookmark, state: .highlighted)
}
```
@ -150,10 +154,10 @@ override func viewDidLoad() {
// See the `UIBarStyle` enum for more styles, including `.Default`.
toolbar.barStyle = .black
toolbar.isTranslucent = true
toolbar.isTranslucent = false
toolbar.tintColor = UIColor(named: "Tint_Green_Color")
toolbar.backgroundColor = UIColor(named: "Tint_Blue_Color")
toolbar.tintColor = UIColor.systemGreen
toolbar.backgroundColor = UIColor.systemBlue
let toolbarButtonItems = [
refreshBarButtonItem,
@ -194,8 +198,8 @@ func configurePageControl() {
pageControl.numberOfPages = colors.count
pageControl.currentPage = 2
pageControl.pageIndicatorTintColor = UIColor(named: "Tint_Green_Color")
pageControl.currentPageIndicatorTintColor = UIColor(named: "Tint_Purple_Color")
pageControl.pageIndicatorTintColor = UIColor.systemGreen
pageControl.currentPageIndicatorTintColor = UIColor.systemPurple
pageControl.addTarget(self, action: #selector(PageControlViewController.pageControlValueDidChange), for: .valueChanged)
}

View file

@ -30,12 +30,14 @@
2200544A18BC54F5002A6E8B /* WebViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2200543B18BC54F5002A6E8B /* WebViewController.swift */; };
228DBA0818BC53F1002BA12A /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 228DBA0718BC53F1002BA12A /* Assets.xcassets */; };
3E5C084E1974991E00969DD7 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 3E5C08501974991E00969DD7 /* Main.storyboard */; };
5312D0F222848B0200048DE2 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 5312D0F022848B0200048DE2 /* Credits.rtf */; };
533BD78D1F8BE1A6007D5C3B /* DetailViewManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 533BD78C1F8BE1A6007D5C3B /* DetailViewManager.swift */; };
533BD7951F8BF6A4007D5C3B /* UIViewController+SizeChange.swift in Sources */ = {isa = PBXBuildFile; fileRef = 533BD7941F8BF6A4007D5C3B /* UIViewController+SizeChange.swift */; };
533BD7971F8BF8B0007D5C3B /* BaseTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 533BD7961F8BF8B0007D5C3B /* BaseTableViewController.swift */; };
533BD7BC1F8D2B08007D5C3B /* SearchBarsTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 533BD7BA1F8D2B07007D5C3B /* SearchBarsTableViewController.swift */; };
533BD7BD1F8D2B08007D5C3B /* ToolbarsTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 533BD7BB1F8D2B07007D5C3B /* ToolbarsTableViewController.swift */; };
5341627C1F291F310007BCCA /* ToolbarViewControllers.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5341627A1F291F310007BCCA /* ToolbarViewControllers.storyboard */; };
53654E232298881200B999C7 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 53654E222298881200B999C7 /* WebKit.framework */; };
537357141F291E6700FAB742 /* SearchViewControllers.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 537357121F291E6700FAB742 /* SearchViewControllers.storyboard */; };
538B36F41F2A8E06002AE100 /* DatePickerController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 538B36F21F2A8D97002AE100 /* DatePickerController.storyboard */; };
538B36F71F2A8E8A002AE100 /* TextViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 538B36F51F2A8E66002AE100 /* TextViewController.storyboard */; };
@ -86,7 +88,10 @@
228DB9F318BC53F1002BA12A /* UIKitCatalog.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = UIKitCatalog.app; sourceTree = BUILT_PRODUCTS_DIR; };
228DB9F718BC53F1002BA12A /* UIKitCatalog-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "UIKitCatalog-Info.plist"; sourceTree = "<group>"; };
228DBA0718BC53F1002BA12A /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
2CCCDF102CCCDC9000000001 /* LICENSE.txt */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE.txt; sourceTree = "<group>"; };
2CDE19A02CDE1AB000000001 /* SampleCode.xcconfig */ = {isa = PBXFileReference; name = SampleCode.xcconfig; path = Configuration/SampleCode.xcconfig; sourceTree = "<group>"; };
3E5C084F1974991E00969DD7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
5312D0F122848B0200048DE2 /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = Base; path = Base.lproj/Credits.rtf; sourceTree = "<group>"; };
533BD78C1F8BE1A6007D5C3B /* DetailViewManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DetailViewManager.swift; sourceTree = "<group>"; };
533BD7941F8BF6A4007D5C3B /* UIViewController+SizeChange.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UIViewController+SizeChange.swift"; sourceTree = "<group>"; };
533BD7961F8BF8B0007D5C3B /* BaseTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseTableViewController.swift; sourceTree = "<group>"; };
@ -94,6 +99,7 @@
533BD7BB1F8D2B07007D5C3B /* ToolbarsTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ToolbarsTableViewController.swift; sourceTree = "<group>"; };
5341627B1F291F310007BCCA /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/ToolbarViewControllers.storyboard; sourceTree = "<group>"; };
5359C3081F194CF0007F0EC7 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
53654E222298881200B999C7 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; };
537357131F291E6700FAB742 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/SearchViewControllers.storyboard; sourceTree = "<group>"; };
538B36F31F2A8D97002AE100 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/DatePickerController.storyboard; sourceTree = "<group>"; };
538B36F61F2A8E66002AE100 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/TextViewController.storyboard; sourceTree = "<group>"; };
@ -116,9 +122,8 @@
53CE5AF41F2A8BB000D8A656 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/StepperViewController.storyboard; sourceTree = "<group>"; };
53CE5AF71F2A8BD000D8A656 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/SwitchViewController.storyboard; sourceTree = "<group>"; };
53CE5AFA1F2A8BEB00D8A656 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/TextFieldViewController.storyboard; sourceTree = "<group>"; };
53DDE73C22776382000006CF /* UIKitCatalog.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = UIKitCatalog.entitlements; sourceTree = "<group>"; };
B50F41071B1D284700E5147D /* StackViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StackViewController.swift; sourceTree = "<group>"; };
E05970B0E05971D000000001 /* SampleCode.xcconfig */ = {isa = PBXFileReference; name = SampleCode.xcconfig; path = Configuration/SampleCode.xcconfig; sourceTree = "<group>"; };
E2DECA10E2DE8B8000000001 /* LICENSE.txt */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE.txt; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@ -126,6 +131,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
53654E232298881200B999C7 /* WebKit.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -138,8 +144,9 @@
5359C3081F194CF0007F0EC7 /* README.md */,
228DB9F518BC53F1002BA12A /* UIKitCatalog */,
228DB9F418BC53F1002BA12A /* Products */,
E05975F0E0597BF000000001 /* Configuration */,
E2DE9120E2DEC9A000000001 /* LICENSE */,
53654E212298881100B999C7 /* Frameworks */,
2CDDD4C02CDDD48000000001 /* Configuration */,
2CCCD8802CCCCF2000000001 /* LICENSE */,
);
sourceTree = "<group>";
};
@ -154,6 +161,7 @@
228DB9F518BC53F1002BA12A /* UIKitCatalog */ = {
isa = PBXGroup;
children = (
53DDE73C22776382000006CF /* UIKitCatalog.entitlements */,
3E2459D41931CCB5002D3369 /* Application */,
3E1DA7601931CC99000114A9 /* View Controllers */,
228DBA0718BC53F1002BA12A /* Assets.xcassets */,
@ -171,6 +179,7 @@
53B791D41F854B4700AB2FA6 /* content.html */,
53B791D61F854B4700AB2FA6 /* InfoPlist.strings */,
53B791D81F854B4800AB2FA6 /* Localizable.strings */,
5312D0F022848B0200048DE2 /* Credits.rtf */,
);
name = "Supporting Files";
sourceTree = "<group>";
@ -197,6 +206,23 @@
name = Toolbar;
sourceTree = "<group>";
};
2CCCD8802CCCCF2000000001 /* LICENSE */ = {
isa = PBXGroup;
children = (
2CCCDF102CCCDC9000000001 /* LICENSE.txt */,
);
name = LICENSE;
path = LICENSE;
sourceTree = "<group>";
};
2CDDD4C02CDDD48000000001 /* Configuration */ = {
isa = PBXGroup;
children = (
2CDE19A02CDE1AB000000001 /* SampleCode.xcconfig */,
);
name = Configuration;
sourceTree = "<group>";
};
3E1DA7601931CC99000114A9 /* View Controllers */ = {
isa = PBXGroup;
children = (
@ -259,21 +285,12 @@
name = "Search Bar";
sourceTree = "<group>";
};
E05975F0E0597BF000000001 /* Configuration */ = {
53654E212298881100B999C7 /* Frameworks */ = {
isa = PBXGroup;
children = (
E05970B0E05971D000000001 /* SampleCode.xcconfig */,
53654E222298881200B999C7 /* WebKit.framework */,
);
name = Configuration;
sourceTree = "<group>";
};
E2DE9120E2DEC9A000000001 /* LICENSE */ = {
isa = PBXGroup;
children = (
E2DECA10E2DE8B8000000001 /* LICENSE.txt */,
);
name = LICENSE;
path = LICENSE;
name = Frameworks;
sourceTree = "<group>";
};
/* End PBXGroup section */
@ -286,7 +303,7 @@
228DB9EF18BC53F1002BA12A /* Sources */,
228DB9F018BC53F1002BA12A /* Frameworks */,
228DB9F118BC53F1002BA12A /* Resources */,
5399BE86211B482A005809B6,
FB440340FB430B8000000001,
);
buildRules = (
);
@ -304,17 +321,17 @@
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 0700;
LastUpgradeCheck = 0940;
LastUpgradeCheck = 1100;
ORGANIZATIONNAME = Apple;
TargetAttributes = {
228DB9F218BC53F1002BA12A = {
LastSwiftMigration = 0900;
LastSwiftMigration = 1020;
};
};
};
buildConfigurationList = 228DB9EE18BC53F1002BA12A /* Build configuration list for PBXProject "UIKitCatalog" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
@ -355,6 +372,7 @@
53CE5AF21F2A8B8300D8A656 /* StackViewController.storyboard in Resources */,
538B36F71F2A8E8A002AE100 /* TextViewController.storyboard in Resources */,
539C6BAF1F27F4980006C5A9 /* LaunchScreen.storyboard in Resources */,
5312D0F222848B0200048DE2 /* Credits.rtf in Resources */,
539029FF1F2A53AD009775E3 /* AlertControllerViewController.storyboard in Resources */,
53CE5AF51F2A8BB000D8A656 /* StepperViewController.storyboard in Resources */,
53CE5AF81F2A8BD000D8A656 /* SwitchViewController.storyboard in Resources */,
@ -411,6 +429,14 @@
name = Main.storyboard;
sourceTree = "<group>";
};
5312D0F022848B0200048DE2 /* Credits.rtf */ = {
isa = PBXVariantGroup;
children = (
5312D0F122848B0200048DE2 /* Base */,
);
name = Credits.rtf;
sourceTree = "<group>";
};
5341627A1F291F310007BCCA /* ToolbarViewControllers.storyboard */ = {
isa = PBXVariantGroup;
children = (
@ -592,9 +618,10 @@
/* Begin XCBuildConfiguration section */
228DBA0918BC53F1002BA12A /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = E05970B0E05971D000000001 /* SampleCode.xcconfig */;
baseConfigurationReference = 2CDE19A02CDE1AB000000001 /* SampleCode.xcconfig */;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
@ -637,7 +664,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 11.1;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
SWIFT_VERSION = "";
@ -647,9 +674,10 @@
};
228DBA0A18BC53F1002BA12A /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = E05970B0E05971D000000001 /* SampleCode.xcconfig */;
baseConfigurationReference = 2CDE19A02CDE1AB000000001 /* SampleCode.xcconfig */;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
@ -685,7 +713,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 11.1;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
SDKROOT = iphoneos;
SWIFT_VERSION = "";
TARGETED_DEVICE_FAMILY = "1,2";
@ -695,37 +723,43 @@
};
228DBA0C18BC53F1002BA12A /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = E05970B0E05971D000000001 /* SampleCode.xcconfig */;
baseConfigurationReference = 2CDE19A02CDE1AB000000001 /* SampleCode.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = UIKitCatalog/UIKitCatalog.entitlements;
DERIVE_UIKITFORMAC_PRODUCT_BUNDLE_IDENTIFIER = YES;
DEVELOPMENT_TEAM = "";
INFOPLIST_FILE = "$(SRCROOT)/UIKitCatalog/UIKitCatalog-Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 11.4;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = "com.example.apple-samplecode.${PRODUCT_NAME:rfc1034identifier}${SAMPLE_CODE_DISAMBIGUATOR}";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SUPPORTS_UIKITFORMAC = YES;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
SWIFT_VERSION = 4.0;
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
};
228DBA0D18BC53F1002BA12A /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = E05970B0E05971D000000001 /* SampleCode.xcconfig */;
baseConfigurationReference = 2CDE19A02CDE1AB000000001 /* SampleCode.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = UIKitCatalog/UIKitCatalog.entitlements;
DERIVE_UIKITFORMAC_PRODUCT_BUNDLE_IDENTIFIER = YES;
DEVELOPMENT_TEAM = "";
INFOPLIST_FILE = "$(SRCROOT)/UIKitCatalog/UIKitCatalog-Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 11.4;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = "com.example.apple-samplecode.${PRODUCT_NAME:rfc1034identifier}${SAMPLE_CODE_DISAMBIGUATOR}";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SUPPORTS_UIKITFORMAC = YES;
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
SWIFT_VERSION = 4.0;
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Release;
};

View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BuildSystemType</key>
<string>Latest</string>
</dict>
</plist>

View file

@ -10,16 +10,18 @@ import UIKit
class ActivityIndicatorViewController: UITableViewController {
// MARK: - Properties
@IBOutlet weak var grayStyleActivityIndicatorView: UIActivityIndicatorView!
@IBOutlet weak var defaultSmallActivityIndicatorView: UIActivityIndicatorView!
@IBOutlet weak var defaultLargeActivityIndicatorView: UIActivityIndicatorView!
@IBOutlet weak var tintedActivityIndicatorView: UIActivityIndicatorView!
@IBOutlet weak var tintedSmallActivityIndicatorView: UIActivityIndicatorView!
@IBOutlet weak var tintedLargeActivityIndicatorView: UIActivityIndicatorView!
// MARK: - View Life Cycle
override func viewDidLoad() {
super.viewDidLoad()
configureGrayActivityIndicatorView()
configureDefaultActivityIndicatorView()
configureTintedActivityIndicatorView()
// When the activity is done, be sure to use UIActivityIndicatorView.stopAnimating().
@ -27,19 +29,25 @@ class ActivityIndicatorViewController: UITableViewController {
// MARK: - Configuration
func configureGrayActivityIndicatorView() {
grayStyleActivityIndicatorView.activityIndicatorViewStyle = .gray
func configureDefaultActivityIndicatorView() {
defaultSmallActivityIndicatorView.style = UIActivityIndicatorView.Style.medium
defaultLargeActivityIndicatorView.style = UIActivityIndicatorView.Style.large
grayStyleActivityIndicatorView.startAnimating()
defaultSmallActivityIndicatorView.startAnimating()
defaultLargeActivityIndicatorView.startAnimating()
grayStyleActivityIndicatorView.hidesWhenStopped = true
defaultSmallActivityIndicatorView.hidesWhenStopped = true
defaultLargeActivityIndicatorView.hidesWhenStopped = true
}
func configureTintedActivityIndicatorView() {
tintedActivityIndicatorView.activityIndicatorViewStyle = .gray
tintedSmallActivityIndicatorView.style = UIActivityIndicatorView.Style.medium
tintedLargeActivityIndicatorView.style = UIActivityIndicatorView.Style.large
tintedActivityIndicatorView.color = UIColor(named: "Tint_Purple_Color")
tintedSmallActivityIndicatorView.color = UIColor.systemPurple
tintedLargeActivityIndicatorView.color = UIColor.systemPurple
tintedActivityIndicatorView.startAnimating()
tintedSmallActivityIndicatorView.startAnimating()
tintedLargeActivityIndicatorView.startAnimating()
}
}

View file

@ -157,7 +157,7 @@ class AlertControllerViewController: UITableViewController {
secure entry.
*/
self.textDidChangeObserver = NotificationCenter.default.addObserver(
forName: NSNotification.Name.UITextFieldTextDidChange,
forName: UITextField.textDidChangeNotification,
object: textField,
queue: OperationQueue.main) { (notification) in
if let textField = notification.object as? UITextField {

View file

@ -20,12 +20,16 @@ class AppDelegate: NSObject, UIApplicationDelegate, UISplitViewControllerDelegat
// MARK: - UIApplicationDelegate
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
if let splitViewController = window!.rootViewController as? UISplitViewController {
splitViewController.preferredDisplayMode = .allVisible
splitViewController.delegate = detailViewManager
detailViewManager.splitViewController = splitViewController
// Set the master view controller table view with translucent background.
splitViewController.primaryBackgroundStyle = .sidebar
}
return true
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 MiB

After

Width:  |  Height:  |  Size: 926 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 MiB

After

Width:  |  Height:  |  Size: 1.3 MiB

View file

@ -1,21 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "Flowers_3.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 MiB

View file

@ -1,21 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "Flowers_4.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

View file

@ -1,21 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "Flowers_5.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

View file

@ -1,20 +0,0 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.333",
"alpha" : "1.000",
"blue" : "1.000",
"green" : "0.784"
}
}
}
]
}

View file

@ -1,20 +0,0 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.255",
"alpha" : "1.000",
"blue" : "0.470",
"green" : "0.804"
}
}
}
]
}

View file

@ -1,20 +0,0 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.659",
"alpha" : "1.000",
"blue" : "0.988",
"green" : "0.271"
}
}
}
]
}

View file

@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "bookmark_icon_1x.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "bookmark_icon_2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "bookmark_icon_3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 343 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 503 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 849 B

View file

@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "bookmark_icon_highlighted_1x.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "bookmark_icon_highlighted_2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "bookmark_icon_highlighted_3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 349 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 503 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 864 B

View file

@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "checkmark_icon_1x.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "checkmark_icon_2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "checkmark_icon_3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

View file

@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "search_icon_1x.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "search_icon_2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "search_icon_3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

View file

@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "slider_thumb_1x.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "slider_thumb_2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "slider_thumb_3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

View file

@ -0,0 +1,68 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "1.000",
"alpha" : "1.000",
"blue" : "1.000",
"green" : "1.000"
}
}
},
{
"idiom" : "universal",
"appearances" : [
{
"appearance" : "luminosity",
"value" : "light"
}
],
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "1.000",
"alpha" : "1.000",
"blue" : "1.000",
"green" : "1.000"
}
}
},
{
"idiom" : "universal",
"appearances" : [
{
"appearance" : "luminosity",
"value" : "dark"
}
],
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.000",
"alpha" : "0.000",
"blue" : "0.000",
"green" : "0.000"
}
}
},
{
"idiom" : "ipad",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "1.000",
"alpha" : "1.000",
"blue" : "1.000",
"green" : "1.000"
}
}
}
]
}

View file

@ -0,0 +1,68 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.031",
"alpha" : "1.000",
"blue" : "0.500",
"green" : "0.702"
}
}
},
{
"idiom" : "universal",
"appearances" : [
{
"appearance" : "luminosity",
"value" : "light"
}
],
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.031",
"alpha" : "1.000",
"blue" : "0.500",
"green" : "0.702"
}
}
},
{
"idiom" : "universal",
"appearances" : [
{
"appearance" : "luminosity",
"value" : "dark"
}
],
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.209",
"alpha" : "1.000",
"blue" : "0.500",
"green" : "0.938"
}
}
},
{
"idiom" : "ipad",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.031",
"alpha" : "1.000",
"blue" : "0.500",
"green" : "0.702"
}
}
}
]
}

View file

@ -0,0 +1,68 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.031",
"alpha" : "1.000",
"blue" : "0.500",
"green" : "0.702"
}
}
},
{
"idiom" : "universal",
"appearances" : [
{
"appearance" : "luminosity",
"value" : "light"
}
],
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.031",
"alpha" : "1.000",
"blue" : "0.500",
"green" : "0.702"
}
}
},
{
"idiom" : "universal",
"appearances" : [
{
"appearance" : "luminosity",
"value" : "dark"
}
],
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.209",
"alpha" : "1.000",
"blue" : "0.500",
"green" : "0.938"
}
}
},
{
"idiom" : "ipad",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.031",
"alpha" : "1.000",
"blue" : "0.500",
"green" : "0.702"
}
}
}
]
}

View file

@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "tools_icon_1x.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "tools_icon_2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "tools_icon_3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 242 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 369 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 606 B

View file

@ -1,11 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13156.6" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="YvC-vN-mSd">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14800.2" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="YvC-vN-mSd">
<device id="retina4_7" orientation="portrait"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13137.5"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14758.1"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -16,24 +13,42 @@
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="Udh-X7-hOc">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<sections>
<tableViewSection headerTitle="Gray" id="9eg-PX-Muo">
<tableViewSection headerTitle="Default" id="9eg-PX-Muo">
<cells>
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" id="yn2-Ta-5b4">
<rect key="frame" x="0.0" y="55.5" width="375" height="44"/>
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" rowHeight="58" id="yn2-Ta-5b4">
<rect key="frame" x="0.0" y="55.5" width="375" height="58"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="yn2-Ta-5b4" id="wPg-rJ-XdR">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="58"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<activityIndicatorView opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" style="gray" translatesAutoresizingMaskIntoConstraints="NO" id="5Na-2m-UBr">
<rect key="frame" x="177.5" y="12" width="20" height="20"/>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="CZW-TS-wTd">
<rect key="frame" x="146.5" y="10.5" width="82" height="37"/>
<subviews>
<activityIndicatorView opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="751" verticalHuggingPriority="750" style="gray" translatesAutoresizingMaskIntoConstraints="NO" id="5Na-2m-UBr">
<rect key="frame" x="8" y="8" width="20" height="21"/>
</activityIndicatorView>
<activityIndicatorView opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" style="whiteLarge" translatesAutoresizingMaskIntoConstraints="NO" id="M5t-YG-hcB">
<rect key="frame" x="36" y="0.0" width="37" height="37"/>
</activityIndicatorView>
</subviews>
<constraints>
<constraint firstAttribute="centerX" secondItem="5Na-2m-UBr" secondAttribute="centerX" id="fV6-Ix-bDQ"/>
<constraint firstAttribute="centerY" secondItem="5Na-2m-UBr" secondAttribute="centerY" id="yUP-VN-Acb"/>
<constraint firstAttribute="trailing" secondItem="M5t-YG-hcB" secondAttribute="trailing" constant="9" id="1bF-2T-IsT"/>
<constraint firstItem="M5t-YG-hcB" firstAttribute="centerY" secondItem="CZW-TS-wTd" secondAttribute="centerY" id="A4N-by-OTy"/>
<constraint firstItem="5Na-2m-UBr" firstAttribute="leading" secondItem="CZW-TS-wTd" secondAttribute="leading" constant="8" id="FBn-Ws-tsw"/>
<constraint firstItem="5Na-2m-UBr" firstAttribute="top" secondItem="CZW-TS-wTd" secondAttribute="topMargin" id="MvP-me-LhS"/>
<constraint firstAttribute="trailing" secondItem="5Na-2m-UBr" secondAttribute="trailing" constant="54" id="U69-I5-xXs"/>
<constraint firstItem="M5t-YG-hcB" firstAttribute="leading" secondItem="5Na-2m-UBr" secondAttribute="trailing" constant="8" id="WAa-aQ-QNn"/>
<constraint firstItem="5Na-2m-UBr" firstAttribute="centerY" secondItem="CZW-TS-wTd" secondAttribute="centerY" id="YzJ-Gf-v77"/>
</constraints>
</view>
</subviews>
<constraints>
<constraint firstItem="CZW-TS-wTd" firstAttribute="centerY" secondItem="wPg-rJ-XdR" secondAttribute="centerY" id="Cy2-2r-1JH"/>
<constraint firstItem="CZW-TS-wTd" firstAttribute="top" secondItem="wPg-rJ-XdR" secondAttribute="topMargin" constant="-0.5" id="XUu-jo-iSH"/>
<constraint firstItem="CZW-TS-wTd" firstAttribute="centerX" secondItem="wPg-rJ-XdR" secondAttribute="centerX" id="ysP-dk-etz"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
@ -41,20 +56,37 @@
</tableViewSection>
<tableViewSection headerTitle="Tinted" id="fUA-1K-3Rv">
<cells>
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" id="z0B-YV-ic1">
<rect key="frame" x="0.0" y="147.5" width="375" height="44"/>
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" rowHeight="58" id="z0B-YV-ic1">
<rect key="frame" x="0.0" y="161.5" width="375" height="58"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="z0B-YV-ic1" id="stF-iz-x9q">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="58"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<activityIndicatorView opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" style="gray" translatesAutoresizingMaskIntoConstraints="NO" id="anh-Wd-IWS">
<rect key="frame" x="177.5" y="12" width="20" height="20"/>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="jfs-lj-Sfc">
<rect key="frame" x="146" y="10.5" width="83" height="37"/>
<subviews>
<activityIndicatorView opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="751" verticalHuggingPriority="750" style="gray" translatesAutoresizingMaskIntoConstraints="NO" id="wIr-u3-n9x">
<rect key="frame" x="9" y="8.5" width="20" height="20"/>
</activityIndicatorView>
<activityIndicatorView opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" style="whiteLarge" translatesAutoresizingMaskIntoConstraints="NO" id="3sQ-iE-m13">
<rect key="frame" x="37" y="0.0" width="37" height="37"/>
</activityIndicatorView>
</subviews>
<constraints>
<constraint firstAttribute="centerY" secondItem="anh-Wd-IWS" secondAttribute="centerY" id="FGN-7y-t5a"/>
<constraint firstAttribute="centerX" secondItem="anh-Wd-IWS" secondAttribute="centerX" id="T4l-kq-DeY"/>
<constraint firstItem="wIr-u3-n9x" firstAttribute="leading" secondItem="jfs-lj-Sfc" secondAttribute="leading" constant="9" id="2mc-QB-RED"/>
<constraint firstItem="wIr-u3-n9x" firstAttribute="centerY" secondItem="jfs-lj-Sfc" secondAttribute="centerY" id="5Qz-DP-S4N"/>
<constraint firstAttribute="trailing" secondItem="wIr-u3-n9x" secondAttribute="trailing" constant="54" id="MTT-x5-NMH"/>
<constraint firstItem="3sQ-iE-m13" firstAttribute="leading" secondItem="jfs-lj-Sfc" secondAttribute="leading" constant="37" id="UeD-iL-B9a"/>
<constraint firstItem="3sQ-iE-m13" firstAttribute="leading" secondItem="wIr-u3-n9x" secondAttribute="trailing" constant="8" id="Utt-C4-s05"/>
<constraint firstItem="3sQ-iE-m13" firstAttribute="centerY" secondItem="jfs-lj-Sfc" secondAttribute="centerY" id="r6x-Qx-NhW"/>
</constraints>
</view>
</subviews>
<constraints>
<constraint firstItem="jfs-lj-Sfc" firstAttribute="centerX" secondItem="stF-iz-x9q" secondAttribute="centerX" id="56m-vE-nN6"/>
<constraint firstItem="jfs-lj-Sfc" firstAttribute="top" secondItem="stF-iz-x9q" secondAttribute="topMargin" constant="-0.5" id="KKl-gs-zOA"/>
<constraint firstItem="jfs-lj-Sfc" firstAttribute="centerY" secondItem="stF-iz-x9q" secondAttribute="centerY" id="hO9-Dt-132"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
@ -68,13 +100,15 @@
</tableView>
<navigationItem key="navigationItem" title="Activity Indicators" id="Cch-q9-uGA"/>
<connections>
<outlet property="grayStyleActivityIndicatorView" destination="5Na-2m-UBr" id="L7M-lL-CJO"/>
<outlet property="tintedActivityIndicatorView" destination="anh-Wd-IWS" id="Xow-Jz-Nw4"/>
<outlet property="defaultLargeActivityIndicatorView" destination="M5t-YG-hcB" id="2zA-DO-R8r"/>
<outlet property="defaultSmallActivityIndicatorView" destination="5Na-2m-UBr" id="AS0-YP-dxQ"/>
<outlet property="tintedLargeActivityIndicatorView" destination="3sQ-iE-m13" id="uJU-XN-Y7A"/>
<outlet property="tintedSmallActivityIndicatorView" destination="wIr-u3-n9x" id="zgT-Ua-dnv"/>
</connections>
</tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="dqV-LB-3XC" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="-3991" y="2372"/>
<point key="canvasLocation" x="-3991.1999999999998" y="2371.6641679160421"/>
</scene>
</scenes>
</document>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="Va4-Ge-jQn">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14800.2" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="Va4-Ge-jQn">
<device id="retina4_7" orientation="portrait"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14758.1"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -15,7 +13,7 @@
<tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="iro-ev-0xV">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<sections>
<tableViewSection headerTitle="Alert Style" id="JaZ-Ik-3It">
<cells>
@ -23,14 +21,14 @@
<rect key="frame" x="0.0" y="55.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Zpj-oF-wnx" id="Uud-fh-4Rj">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Simple" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="d6Q-Gp-MaT">
<rect key="frame" x="16" y="0.0" width="344" height="43.5"/>
<rect key="frame" x="16" y="0.0" width="343" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -40,14 +38,14 @@
<rect key="frame" x="0.0" y="99.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="hKT-sx-aLG" id="F28-Nz-Qyo">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="OK / Cancel" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="d0w-RT-OiQ">
<rect key="frame" x="16" y="0.0" width="344" height="43.5"/>
<rect key="frame" x="16" y="0.0" width="343" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -57,14 +55,14 @@
<rect key="frame" x="0.0" y="143.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="9ff-wL-xVR" id="YVl-hw-ORM">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Three Buttons" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="eDM-aO-Nbd">
<rect key="frame" x="16" y="0.0" width="344" height="43.5"/>
<rect key="frame" x="16" y="0.0" width="343" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -74,14 +72,14 @@
<rect key="frame" x="0.0" y="187.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Jwj-WZ-Ngx" id="IHH-K7-wIg">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Text Entry" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="QST-9u-XS2">
<rect key="frame" x="16" y="0.0" width="344" height="43.5"/>
<rect key="frame" x="16" y="0.0" width="343" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -91,14 +89,14 @@
<rect key="frame" x="0.0" y="231.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="q1B-zD-Fgr" id="wGo-k4-J1q">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Secure Text Entry" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="YMc-Ck-AAm">
<rect key="frame" x="16" y="0.0" width="344" height="43.5"/>
<rect key="frame" x="16" y="0.0" width="343" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -112,14 +110,14 @@
<rect key="frame" x="0.0" y="323.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="syV-LC-EMb" id="KGi-1l-FDT">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Confirm / Cancel" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="fSa-fa-39a">
<rect key="frame" x="16" y="0.0" width="344" height="43.5"/>
<rect key="frame" x="16" y="0.0" width="343" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -129,14 +127,14 @@
<rect key="frame" x="0.0" y="367.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="bTN-4f-7qB" id="rVN-2H-iql">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Destructive" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="2dq-Xl-v3s">
<rect key="frame" x="16" y="0.0" width="344" height="43.5"/>
<rect key="frame" x="16" y="0.0" width="343" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="gl0-hM-EWg">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.11" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="gl0-hM-EWg">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.13"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -15,7 +13,7 @@
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="gDs-OX-aHt">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<sections>
<tableViewSection headerTitle="System (Text)" id="ZP1-Vp-Dmj">
<cells>
@ -23,14 +21,12 @@
<rect key="frame" x="0.0" y="55.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="kEp-Mb-jNt" id="4pA-My-XiJ">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="4Kt-uW-BR1">
<rect key="frame" x="164.5" y="7" width="46" height="30"/>
<state key="normal" title="Button">
<color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</state>
<state key="normal" title="Button"/>
</button>
</subviews>
<constraints>
@ -47,14 +43,11 @@
<rect key="frame" x="0.0" y="147.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="h90-Oi-fmq" id="zIs-mq-UBK">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="contactAdd" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Kaz-JT-zT4">
<rect key="frame" x="176.5" y="11" width="22" height="22"/>
<state key="normal">
<color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</state>
<rect key="frame" x="175" y="10" width="25" height="24"/>
</button>
</subviews>
<constraints>
@ -71,14 +64,11 @@
<rect key="frame" x="0.0" y="239.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Zoj-H2-9xS" id="kOh-TM-Vhn">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="detailDisclosure" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="1kk-qb-b6p">
<rect key="frame" x="176.5" y="11" width="22" height="22"/>
<state key="normal">
<color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</state>
<rect key="frame" x="175" y="10" width="25" height="24"/>
</button>
</subviews>
<constraints>
@ -95,7 +85,7 @@
<rect key="frame" x="0.0" y="331.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="FHo-QU-Dbd" id="kI0-Vx-CmV">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="tGF-rn-9B7">
@ -104,9 +94,7 @@
<constraint firstAttribute="height" constant="30" id="3yG-gd-js4"/>
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="82" id="KcP-fe-RbS"/>
</constraints>
<state key="normal" title="Button">
<color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</state>
<state key="normal" title="Button"/>
</button>
</subviews>
<constraints>
@ -123,14 +111,12 @@
<rect key="frame" x="0.0" y="423.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="aNB-XX-idG" id="zVr-S5-LW6">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="ynp-Un-3Nj">
<rect key="frame" x="164.5" y="7" width="46" height="30"/>
<state key="normal" title="Button">
<color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</state>
<state key="normal" title="Button"/>
</button>
</subviews>
<constraints>
@ -141,6 +127,49 @@
</tableViewCell>
</cells>
</tableViewSection>
<tableViewSection headerTitle="System (Symbol)" id="YPO-DM-d7b">
<cells>
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" id="nch-0K-etg">
<rect key="frame" x="0.0" y="515.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="nch-0K-etg" id="9tf-qq-iAy">
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="QwT-La-9Hy">
<rect key="frame" x="172.5" y="7" width="30" height="30"/>
</button>
</subviews>
<constraints>
<constraint firstAttribute="centerY" secondItem="QwT-La-9Hy" secondAttribute="centerY" id="ZXe-oo-R9a"/>
<constraint firstAttribute="centerX" secondItem="QwT-La-9Hy" secondAttribute="centerX" id="iTr-X3-rKh"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
</cells>
</tableViewSection>
<tableViewSection headerTitle="System (Text + Symbol)" id="Foz-RV-Pf7">
<cells>
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" id="efR-L3-lDw">
<rect key="frame" x="0.0" y="607.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="efR-L3-lDw" id="ZyN-Rl-rCp">
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="oaQ-1y-atp">
<rect key="frame" x="164.5" y="7" width="46" height="30"/>
<state key="normal" title="Button"/>
</button>
</subviews>
<constraints>
<constraint firstAttribute="centerY" secondItem="oaQ-1y-atp" secondAttribute="centerY" id="mYE-T6-yLW"/>
<constraint firstAttribute="centerX" secondItem="oaQ-1y-atp" secondAttribute="centerX" id="qKh-qB-Zu9"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
</cells>
</tableViewSection>
</sections>
<connections>
<outlet property="dataSource" destination="gl0-hM-EWg" id="CGJ-ZK-3Nr"/>
@ -152,6 +181,8 @@
<connections>
<outlet property="attributedTextButton" destination="ynp-Un-3Nj" id="GnF-wA-dTM"/>
<outlet property="imageButton" destination="tGF-rn-9B7" id="TOD-ga-eqT"/>
<outlet property="symbolButton" destination="QwT-La-9Hy" id="sIN-Di-Y0D"/>
<outlet property="symbolTextButton" destination="oaQ-1y-atp" id="Xem-ED-whh"/>
<outlet property="systemContactAddButton" destination="Kaz-JT-zT4" id="U38-FM-tgn"/>
<outlet property="systemDetailDisclosureButton" destination="1kk-qb-b6p" id="hCA-Ru-6aE"/>
<outlet property="systemTextButton" destination="4Kt-uW-BR1" id="BdS-qx-wTr"/>

View file

@ -0,0 +1,9 @@
{\rtf1\ansi\ansicpg1252\cocoartf2467
\cocoatextscaling0\cocoaplatform0{\fonttbl\f0\fnil\fcharset0 LucidaGrande;}
{\colortbl;\red255\green255\blue255;\red0\green0\blue0;}
{\*\expandedcolortbl;;\cssrgb\c0\c0\c0\cname textColor;}
\vieww9000\viewh8400\viewkind0
\pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\qc\partightenfactor0
\f0\fs20 \cf2 Demonstrates how to use UIKit's views and controls.\
}

View file

@ -1,11 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="7Xn-ho-KP8">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="7Xn-ho-KP8">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<capability name="Constraints to layout margins" minToolsVersion="6.0"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -20,9 +17,6 @@
<subviews>
<datePicker contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" datePickerMode="dateAndTime" minuteInterval="1" translatesAutoresizingMaskIntoConstraints="NO" id="ebB-3n-o8C">
<rect key="frame" x="27.5" y="225.5" width="320" height="216"/>
<date key="date" timeIntervalSinceReferenceDate="491514569.99293602">
<!--2016-07-29 19:49:29 +0000-->
</date>
</datePicker>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="02B-Y8-Hxk">
<rect key="frame" x="16" y="441.5" width="343" height="20.5"/>
@ -31,7 +25,7 @@
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="02B-Y8-Hxk" firstAttribute="top" secondItem="ebB-3n-o8C" secondAttribute="bottom" id="An0-A4-IS5"/>
<constraint firstAttribute="leadingMargin" secondItem="02B-Y8-Hxk" secondAttribute="leading" id="Gik-bp-oJf"/>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="XCI-A9-c2M">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="XCI-A9-c2M">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -15,6 +13,7 @@
<imageView key="view" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" id="InE-1J-uPb">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
</imageView>
<toolbarItems/>
<navigationItem key="navigationItem" title="Image View" id="1uT-59-ex0"/>

View file

@ -2,5 +2,8 @@
See LICENSE folder for this samples licensing information.
Abstract:
Localized versions of Info.plist keys
Localized versions of Info.plist keys.
*/
CFBundleGetInfoString = "v15.0, Copyright 2008-2019, Apple Inc.";
NSHumanReadableCopyright = "Copyright © 2008-2019, Apple Inc.";

View file

@ -1,11 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13529" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="4yX-ry-qSy">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.11" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="4yX-ry-qSy">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13527"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.13"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -15,7 +12,7 @@
<objects>
<navigationController id="4yX-ry-qSy" sceneMemberID="viewController">
<navigationBar key="navigationBar" contentMode="scaleToFill" id="Cdq-FY-kKG">
<rect key="frame" x="0.0" y="20" width="375" height="44"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
</navigationBar>
<connections>
@ -33,7 +30,6 @@
<view key="view" contentMode="scaleToFill" id="Bd8-dr-7ve">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<viewLayoutGuide key="safeArea" id="m5c-PM-dSX"/>
</view>
<navigationItem key="navigationItem" title="UIKitCatalog" id="uDS-kc-Hwh"/>

View file

@ -23,12 +23,15 @@ Strings used across the application via the NSLocalizedString API.
"underlined" = "underlined";
"tinted" = "tinted";
"Placeholder text" = "Placeholder text";
"Enter search text" = "Enter search text";
"Red color component value" = "Red color component value";
"Green color component value" = "Green color component value";
"Blue color component value" = "Blue color component value";
"Animated images" = "Animated images";
"Done" = "Done";
"Search" = "Search";
"Settings" = "Settings";
"Airplane" = "Airplane";
"Gift" = "Gift";
"Burst" = "Burst";
"UIKitCatalog" = "UIKitCatalog";
"An error occurred:" = "An error occurred:";

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="5de-VV-J0Y">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="5de-VV-J0Y">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13174"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -21,23 +19,23 @@
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="UIKitCatalog" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="I3S-QC-tTb">
<rect key="frame" x="116" y="116" width="143" height="31.5"/>
<rect key="frame" x="116" y="96" width="143" height="31.5"/>
<fontDescription key="fontDescription" type="system" pointSize="26"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="580" translatesAutoresizingMaskIntoConstraints="NO" id="zUx-Gt-OuD">
<rect key="frame" x="16" y="164.5" width="343" height="85"/>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" layoutMarginsFollowReadableWidth="YES" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="580" translatesAutoresizingMaskIntoConstraints="NO" id="zUx-Gt-OuD">
<rect key="frame" x="16" y="144.5" width="343" height="85"/>
<constraints>
<constraint firstAttribute="height" constant="85" id="L8k-5D-pvH"/>
</constraints>
<string key="text">Explore UIKit controls as you navigate UIKitCatalog. For more information on how UIKitCatalog is structured, consult the ReadMe.</string>
<fontDescription key="fontDescription" type="system" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="I3S-QC-tTb" firstAttribute="centerX" secondItem="aE8-Eb-ul8" secondAttribute="centerX" id="8O2-AB-2HE"/>
<constraint firstItem="zUx-Gt-OuD" firstAttribute="top" secondItem="I3S-QC-tTb" secondAttribute="bottom" constant="17" id="awm-Nl-NcA"/>
@ -60,7 +58,7 @@
<objects>
<navigationController storyboardIdentifier="navInitialDetail" useStoryboardIdentifierAsRestorationIdentifier="YES" id="yxm-l2-50f" userLabel="Initial Detail Nav Scene" sceneMemberID="viewController">
<navigationBar key="navigationBar" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" id="gd7-D0-3wT">
<rect key="frame" x="0.0" y="20" width="375" height="44"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
</navigationBar>
<connections>
@ -90,7 +88,7 @@
<objects>
<navigationController id="m1c-Zd-x2H" userLabel="Main Nav" sceneMemberID="viewController">
<navigationBar key="navigationBar" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" id="aLv-tg-Oaf">
<rect key="frame" x="0.0" y="20" width="375" height="44"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
</navigationBar>
<connections>
@ -108,13 +106,13 @@
<tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="Ie1-Wu-iah">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<prototypes>
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="Cell" textLabel="bs1-7b-LnM" detailTextLabel="PRn-mr-nfN" style="IBUITableViewCellStyleSubtitle" id="aFI-1w-10l">
<rect key="frame" x="0.0" y="22" width="375" height="44"/>
<rect key="frame" x="0.0" y="28" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="aFI-1w-10l" id="XTv-m2-AJj">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" multipleTouchEnabled="YES" contentMode="left" insetsLayoutMarginsFromSafeArea="NO" text="Title" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="bs1-7b-LnM">
@ -145,7 +143,7 @@
</tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="IfR-rq-5xW" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="-489" y="301"/>
<point key="canvasLocation" x="-521" y="301"/>
</scene>
</scenes>
</document>

View file

@ -1,11 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="ZSF-lM-gQa">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="ZSF-lM-gQa">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<capability name="Constraints to layout margins" minToolsVersion="6.0"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -24,11 +21,10 @@
<color key="currentPageIndicatorTintColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</pageControl>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="utF-re-9KT">
<rect key="frame" x="40" y="99" width="295" height="528"/>
<color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<rect key="frame" x="40" y="79" width="295" height="548"/>
</view>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="5Qq-SM-uLH" firstAttribute="bottom" secondItem="utF-re-9KT" secondAttribute="bottom" constant="40" id="CJN-Da-IOG"/>
<constraint firstItem="vYI-31-hYo" firstAttribute="leading" secondItem="1Df-6J-Q8v" secondAttribute="leadingMargin" id="GCu-9h-pRg"/>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="hIc-I2-PiV">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="hIc-I2-PiV">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -18,26 +16,27 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<pickerView contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="cg8-rc-3S1">
<rect key="frame" x="0.0" y="51" width="375" height="216"/>
<rect key="frame" x="0.0" y="31" width="375" height="216"/>
<constraints>
<constraint firstAttribute="width" constant="375" id="8om-ul-xFq"/>
</constraints>
<connections>
<outlet property="dataSource" destination="hIc-I2-PiV" id="Kgo-IJ-YBF"/>
<outlet property="delegate" destination="hIc-I2-PiV" id="M2g-de-Xb2"/>
</connections>
</pickerView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="J93-zx-EMb">
<rect key="frame" x="20" y="275" width="335" height="372"/>
<color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<rect key="frame" x="20" y="255" width="335" height="392"/>
</view>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="4kY-K9-p6O" firstAttribute="trailing" secondItem="J93-zx-EMb" secondAttribute="trailing" constant="20" id="1kh-0c-Eis"/>
<constraint firstItem="4kY-K9-p6O" firstAttribute="bottom" secondItem="J93-zx-EMb" secondAttribute="bottom" constant="20" id="2Ea-6J-SP6"/>
<constraint firstItem="J93-zx-EMb" firstAttribute="leading" secondItem="4kY-K9-p6O" secondAttribute="leading" constant="20" id="PH5-Ia-Fgk"/>
<constraint firstItem="4kY-K9-p6O" firstAttribute="trailing" secondItem="cg8-rc-3S1" secondAttribute="trailing" id="epG-5q-Laz"/>
<constraint firstItem="J93-zx-EMb" firstAttribute="top" secondItem="cg8-rc-3S1" secondAttribute="bottom" constant="8" id="jHF-zp-QA1"/>
<constraint firstItem="cg8-rc-3S1" firstAttribute="leading" secondItem="4kY-K9-p6O" secondAttribute="leading" id="rzb-cz-bKZ"/>
<constraint firstItem="cg8-rc-3S1" firstAttribute="top" secondItem="4kY-K9-p6O" secondAttribute="top" constant="-13" id="zn0-O6-KXh"/>
<constraint firstItem="4kY-K9-p6O" firstAttribute="trailing" secondItem="J93-zx-EMb" secondAttribute="trailing" constant="20" id="7Rf-B1-Bit"/>
<constraint firstItem="J93-zx-EMb" firstAttribute="top" secondItem="cg8-rc-3S1" secondAttribute="bottom" constant="8" id="Jtc-3w-c4S"/>
<constraint firstItem="4kY-K9-p6O" firstAttribute="bottom" secondItem="J93-zx-EMb" secondAttribute="bottom" constant="20" id="LMc-6C-Koj"/>
<constraint firstItem="cg8-rc-3S1" firstAttribute="centerX" secondItem="4kY-K9-p6O" secondAttribute="centerX" id="Qpi-Yb-gej"/>
<constraint firstItem="4kY-K9-p6O" firstAttribute="top" secondItem="cg8-rc-3S1" secondAttribute="top" constant="13" id="ZKM-Nq-hlH"/>
<constraint firstItem="J93-zx-EMb" firstAttribute="leading" secondItem="4kY-K9-p6O" secondAttribute="leading" constant="20" id="nDF-gQ-SPP"/>
</constraints>
<viewLayoutGuide key="safeArea" id="4kY-K9-p6O"/>
</view>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="aY0-FD-8DD">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14800.2" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="aY0-FD-8DD">
<device id="retina4_7" orientation="portrait"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14758.1"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -15,7 +13,7 @@
<tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="vxe-YC-yBi">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<sections>
<tableViewSection headerTitle="Default" id="eUe-E8-yfw">
<cells>
@ -23,7 +21,7 @@
<rect key="frame" x="0.0" y="55.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="kmi-xt-LTG" id="FJn-D1-Mek">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<progressView opaque="NO" contentMode="scaleToFill" verticalHuggingPriority="750" progress="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="ei4-Kf-1yF">
@ -46,11 +44,11 @@
<rect key="frame" x="0.0" y="147.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="8gd-go-6HH" id="s1D-qX-CZU">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<progressView opaque="NO" contentMode="scaleToFill" verticalHuggingPriority="750" progressViewStyle="bar" progress="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="zOW-ND-gMa">
<rect key="frame" x="20" y="21" width="340" height="2.5"/>
<rect key="frame" x="20" y="21.5" width="340" height="2.5"/>
</progressView>
</subviews>
<constraints>
@ -70,7 +68,7 @@
<rect key="frame" x="0.0" y="239.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="e4s-Qv-cWn" id="U7H-qE-1Eb">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<progressView opaque="NO" contentMode="scaleToFill" verticalHuggingPriority="750" progress="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="hce-gL-kyl">

View file

@ -1,11 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14113" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="v21-vF-FLh">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="v21-vF-FLh">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -17,53 +14,53 @@
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="d2N-kr-XWw">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<sections>
<tableViewSection headerTitle="Search Bars" id="1Pr-U6-zci">
<cells>
<tableViewCell contentMode="scaleToFill" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="J7w-dm-KuG" detailTextLabel="C7Y-NY-GyP" style="IBUITableViewCellStyleSubtitle" id="td3-Jx-XEj">
<rect key="frame" x="0.0" y="22" width="375" height="44"/>
<rect key="frame" x="0.0" y="28" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="td3-Jx-XEj" id="LZu-Ux-UPp">
<rect key="frame" x="0.0" y="0.0" width="341" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="347.5" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Default" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="J7w-dm-KuG">
<rect key="frame" x="16" y="6" width="52.5" height="19.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="DefaultSearchBarViewController" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="C7Y-NY-GyP">
<rect key="frame" x="16" y="25.5" width="169.5" height="13.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="11"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</tableViewCellContentView>
</tableViewCell>
<tableViewCell contentMode="scaleToFill" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="CUN-ll-i8J" detailTextLabel="y7q-CG-m74" style="IBUITableViewCellStyleSubtitle" id="Ijh-SG-gIM">
<rect key="frame" x="0.0" y="66" width="375" height="44"/>
<rect key="frame" x="0.0" y="72" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Ijh-SG-gIM" id="5qL-RQ-3wJ">
<rect key="frame" x="0.0" y="0.0" width="341" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="347.5" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Custom" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="CUN-ll-i8J">
<rect key="frame" x="16" y="6" width="56.5" height="19.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="CustomSearchBarViewController" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="y7q-CG-m74">
<rect key="frame" x="16" y="25.5" width="172" height="13.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="11"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -93,14 +90,18 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<searchBar contentMode="redraw" translatesAutoresizingMaskIntoConstraints="NO" id="wag-WL-u6e">
<rect key="frame" x="0.0" y="20" width="375" height="56"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="56"/>
<textInputTraits key="textInputTraits"/>
<scopeButtonTitles>
<string>Title</string>
<string>Title</string>
</scopeButtonTitles>
<connections>
<outlet property="delegate" destination="aTT-8g-UdL" id="Ixz-nw-Grc"/>
</connections>
</searchBar>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="xFq-dM-TAS" firstAttribute="trailing" secondItem="wag-WL-u6e" secondAttribute="trailing" id="2FT-aX-eAh"/>
<constraint firstItem="wag-WL-u6e" firstAttribute="top" secondItem="xFq-dM-TAS" secondAttribute="top" id="qYe-Wb-MuF"/>
@ -126,14 +127,14 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<searchBar contentMode="redraw" translatesAutoresizingMaskIntoConstraints="NO" id="d4g-eI-DIw">
<rect key="frame" x="0.0" y="20" width="375" height="56"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="56"/>
<textInputTraits key="textInputTraits"/>
<connections>
<outlet property="delegate" destination="Mhd-Bs-sIn" id="fpK-JW-vvF"/>
</connections>
</searchBar>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="rtX-bw-2xb" firstAttribute="trailing" secondItem="d4g-eI-DIw" secondAttribute="trailing" id="ROc-RY-l7C"/>
<constraint firstItem="d4g-eI-DIw" firstAttribute="top" secondItem="rtX-bw-2xb" secondAttribute="top" id="dkH-R8-Hqu"/>
@ -157,17 +158,17 @@
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="1PE-AW-QJq">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<prototypes>
<tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="searchResultsCell" textLabel="rIb-i6-JL6" style="IBUITableViewCellStyleDefault" id="hOY-Jy-ScI">
<rect key="frame" x="0.0" y="22" width="375" height="44"/>
<rect key="frame" x="0.0" y="28" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="hOY-Jy-ScI" id="WCi-bR-TE7">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Search results cell" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="rIb-i6-JL6">
<rect key="frame" x="16" y="0.0" width="343" height="43.5"/>
<rect key="frame" x="16" y="0.0" width="343" height="44"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
@ -195,20 +196,20 @@
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="QvM-3S-GbD">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<prototypes>
<tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="searchResultsCell" textLabel="Fze-SS-t1Y" style="IBUITableViewCellStyleDefault" id="Z89-zd-E8L">
<rect key="frame" x="0.0" y="22" width="375" height="44"/>
<rect key="frame" x="0.0" y="28" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Z89-zd-E8L" id="OXE-Q3-c2v">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Search results cell" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Fze-SS-t1Y">
<rect key="frame" x="16" y="0.0" width="343" height="43.5"/>
<rect key="frame" x="16" y="0.0" width="343" height="44"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="Eil-ie-nN6">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14800.2" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="Eil-ie-nN6">
<device id="retina4_7" orientation="portrait"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14758.1"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -15,7 +13,7 @@
<tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="fLQ-5f-tUh">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<sections>
<tableViewSection headerTitle="Default" id="HCa-pZ-1xG">
<cells>
@ -23,11 +21,11 @@
<rect key="frame" x="0.0" y="55.5" width="375" height="90"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="8Eu-YT-DXB" id="M3h-lr-LNM">
<rect key="frame" x="0.0" y="0.0" width="375" height="89.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="90"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" translatesAutoresizingMaskIntoConstraints="NO" id="D6r-9d-m6L">
<rect key="frame" x="47.5" y="31" width="280" height="29"/>
<rect key="frame" x="47.5" y="31.5" width="280" height="28"/>
<constraints>
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="280" id="CNa-r6-Q9z"/>
</constraints>
@ -52,11 +50,11 @@
<rect key="frame" x="0.0" y="193.5" width="375" height="90"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="3qp-zK-6mx" id="us5-tQ-6Iq">
<rect key="frame" x="0.0" y="0.0" width="375" height="89.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="90"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" translatesAutoresizingMaskIntoConstraints="NO" id="A3j-iT-hVF">
<rect key="frame" x="47.5" y="31" width="280" height="29"/>
<rect key="frame" x="47.5" y="31.5" width="280" height="28"/>
<constraints>
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="280" id="dyr-wx-mz3"/>
</constraints>
@ -81,11 +79,11 @@
<rect key="frame" x="0.0" y="331.5" width="375" height="90"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="p73-fd-Xoq" id="u8q-LS-Y7d">
<rect key="frame" x="0.0" y="0.0" width="375" height="89.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="90"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" translatesAutoresizingMaskIntoConstraints="NO" id="dj6-Ch-8fj">
<rect key="frame" x="47.5" y="31" width="280" height="29"/>
<rect key="frame" x="47.5" y="31.5" width="280" height="28"/>
<constraints>
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="280" id="8Kf-xD-h9j"/>
</constraints>
@ -110,11 +108,11 @@
<rect key="frame" x="0.0" y="469.5" width="375" height="90"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="hTb-Lv-lzA" id="HNU-4g-he5">
<rect key="frame" x="0.0" y="0.0" width="375" height="89.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="90"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" translatesAutoresizingMaskIntoConstraints="NO" id="hvO-gV-AgD">
<rect key="frame" x="47.5" y="31" width="280" height="29"/>
<rect key="frame" x="47.5" y="31.5" width="280" height="28"/>
<constraints>
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="280" id="UfD-W5-wci"/>
</constraints>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="laz-6N-ZhE">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.11" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="laz-6N-ZhE">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.13"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -15,7 +13,7 @@
<tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="8xG-xW-Mvc">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<sections>
<tableViewSection headerTitle="Default" id="GM5-I7-cLR">
<cells>
@ -23,7 +21,7 @@
<rect key="frame" x="0.0" y="55.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="3ns-I6-0FN" id="1JS-69-7PP">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="0.5" minValue="0.0" maxValue="1" translatesAutoresizingMaskIntoConstraints="NO" id="r7t-o7-uUH">
@ -46,7 +44,7 @@
<rect key="frame" x="0.0" y="147.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="XBb-zZ-6xb" id="9s3-6s-kVp">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="0.5" minValue="0.0" maxValue="1" translatesAutoresizingMaskIntoConstraints="NO" id="CGL-pk-k1S">
@ -69,7 +67,7 @@
<rect key="frame" x="0.0" y="239.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="4OB-jL-pxb" id="2gM-p3-Tof">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="0.5" minValue="0.0" maxValue="1" translatesAutoresizingMaskIntoConstraints="NO" id="fUs-ee-MUt">
@ -86,6 +84,29 @@
</tableViewCell>
</cells>
</tableViewSection>
<tableViewSection headerTitle="Min and Max Images" id="7KF-l2-cgG">
<cells>
<tableViewCell contentMode="scaleToFill" selectionStyle="none" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="IaF-oq-cUi">
<rect key="frame" x="0.0" y="331.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="IaF-oq-cUi" id="pZM-D2-qX5">
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="0.5" minValue="0.0" maxValue="1" translatesAutoresizingMaskIntoConstraints="NO" id="IZf-0b-G8r">
<rect key="frame" x="18" y="7.5" width="339" height="31"/>
</slider>
</subviews>
<constraints>
<constraint firstItem="IZf-0b-G8r" firstAttribute="leading" secondItem="pZM-D2-qX5" secondAttribute="leading" constant="20" symbolic="YES" id="SI4-TD-KwJ"/>
<constraint firstAttribute="trailing" secondItem="IZf-0b-G8r" secondAttribute="trailing" constant="20" symbolic="YES" id="Zwp-BQ-N1k"/>
<constraint firstAttribute="centerX" secondItem="IZf-0b-G8r" secondAttribute="centerX" id="k1b-Im-KuU"/>
<constraint firstAttribute="centerY" secondItem="IZf-0b-G8r" secondAttribute="centerY" constant="-0.5" id="peG-9p-9Ls"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
</cells>
</tableViewSection>
</sections>
<connections>
<outlet property="dataSource" destination="laz-6N-ZhE" id="J0B-Vs-5pv"/>
@ -97,6 +118,7 @@
<connections>
<outlet property="customSlider" destination="fUs-ee-MUt" id="aKh-90-kmA"/>
<outlet property="defaultSlider" destination="r7t-o7-uUH" id="BWI-BT-mpD"/>
<outlet property="minMaxImageSlider" destination="IZf-0b-G8r" id="he9-y7-sZ0"/>
<outlet property="tintedSlider" destination="CGL-pk-k1S" id="3OT-8C-M2N"/>
</connections>
</tableViewController>

View file

@ -1,11 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="K8w-Uq-R9J">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="K8w-Uq-R9J">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<capability name="Constraints to layout margins" minToolsVersion="6.0"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -19,30 +16,30 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="cDn-lT-iQW">
<rect key="frame" x="16" y="72" width="343" height="126.5"/>
<rect key="frame" x="16" y="52" width="343" height="134.5"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Showing/hiding views" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hqb-J7-HE9">
<rect key="frame" x="0.0" y="0.0" width="343" height="20.5"/>
<fontDescription key="fontDescription" style="UICTFontTextStyleHeadline"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<stackView opaque="NO" contentMode="scaleToFill" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="8wt-PV-oxa">
<rect key="frame" x="0.0" y="30.5" width="343" height="30"/>
<rect key="frame" x="0.0" y="30.5" width="343" height="34"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Detail" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="St9-G8-PkK">
<rect key="frame" x="0.0" y="0.0" width="104.5" height="30"/>
<rect key="frame" x="0.0" y="0.0" width="105" height="34"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalHuggingPriority="249" horizontalCompressionResistancePriority="749" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="XGO-At-Hp0">
<rect key="frame" x="114.5" y="0.0" width="176.5" height="30"/>
<textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="249" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="PKs-Ty-pao">
<rect key="frame" x="115" y="0.0" width="176" height="34"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits"/>
</textField>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="EZd-jG-vsf">
<rect key="frame" x="301" y="0.0" width="42" height="30"/>
<rect key="frame" x="301" y="0.0" width="42" height="34"/>
<inset key="contentEdgeInsets" minX="10" minY="0.0" maxX="10" maxY="0.0"/>
<state key="normal" image="stepper_increment"/>
<connections>
@ -52,21 +49,21 @@
</subviews>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="I05-0C-JZC">
<rect key="frame" x="0.0" y="70.5" width="343" height="30"/>
<rect key="frame" x="0.0" y="74.5" width="343" height="34"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Further Detail" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="iqg-vd-ycM">
<rect key="frame" x="0.0" y="0.0" width="104.5" height="30"/>
<rect key="frame" x="0.0" y="0.0" width="105" height="34"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalHuggingPriority="249" horizontalCompressionResistancePriority="749" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="SqJ-7e-cbd">
<rect key="frame" x="114.5" y="0.0" width="176.5" height="30"/>
<textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="249" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="Iva-ta-sqG">
<rect key="frame" x="115" y="0.0" width="176" height="34"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits" keyboardType="emailAddress"/>
<textInputTraits key="textInputTraits"/>
</textField>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="EyS-LN-1u7">
<rect key="frame" x="301" y="0.0" width="42" height="30"/>
<rect key="frame" x="301" y="0.0" width="42" height="34"/>
<inset key="contentEdgeInsets" minX="10" minY="0.0" maxX="10" maxY="0.0"/>
<state key="normal" image="stepper_decrement"/>
<connections>
@ -76,9 +73,9 @@
</subviews>
</stackView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Footer Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="JXq-J8-IUP">
<rect key="frame" x="0.0" y="110.5" width="343" height="16"/>
<rect key="frame" x="0.0" y="118.5" width="343" height="16"/>
<fontDescription key="fontDescription" style="UICTFontTextStyleFootnote"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -87,12 +84,12 @@
</constraints>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="HBg-iH-Es9">
<rect key="frame" x="16" y="218.5" width="343" height="42"/>
<rect key="frame" x="16" y="206.5" width="343" height="42"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Add/remove views" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="kvo-0P-2un">
<rect key="frame" x="0.0" y="0.0" width="259" height="42"/>
<fontDescription key="fontDescription" style="UICTFontTextStyleHeadline"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<button opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="252" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Got-h9-YTc" userLabel="Add button">
@ -114,13 +111,13 @@
</subviews>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" alignment="center" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="pVr-DZ-tf0">
<rect key="frame" x="16" y="268.5" width="343" height="42"/>
<rect key="frame" x="16" y="256.5" width="343" height="42"/>
<constraints>
<constraint firstAttribute="height" constant="42" placeholder="YES" id="7Rt-U8-9u4"/>
</constraints>
</stackView>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="cDn-lT-iQW" firstAttribute="leading" secondItem="Hwb-09-b4P" secondAttribute="leadingMargin" id="0E3-xe-Wem"/>
<constraint firstItem="HBg-iH-Es9" firstAttribute="top" secondItem="cDn-lT-iQW" secondAttribute="bottom" constant="20" id="2dx-wn-jkY"/>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="Ob2-pp-aCj">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14800.2" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="Ob2-pp-aCj">
<device id="retina4_7" orientation="portrait"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14758.1"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -15,7 +13,7 @@
<tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="aQ3-9F-Tmi">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<sections>
<tableViewSection headerTitle="Default" id="oCN-zS-UpR">
<cells>
@ -23,16 +21,16 @@
<rect key="frame" x="0.0" y="55.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="MFv-3k-2QS" id="muw-kh-U1w">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<stepper opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" maximumValue="10" translatesAutoresizingMaskIntoConstraints="NO" id="LyL-x2-2Vc">
<rect key="frame" x="140.5" y="7.5" width="94" height="29"/>
<rect key="frame" x="140.5" y="8" width="94" height="28"/>
</stepper>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="o6t-lj-Q9C">
<rect key="frame" x="258" y="10.5" width="97" height="20.5"/>
<rect key="frame" x="258" y="11" width="97" height="20.5"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -53,15 +51,16 @@
<rect key="frame" x="0.0" y="147.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Zsy-ff-fyO" id="BCh-iQ-hHA">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<stepper opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" maximumValue="10" translatesAutoresizingMaskIntoConstraints="NO" id="bdI-D2-Wgr">
<rect key="frame" x="140.5" y="7.5" width="94" height="29"/>
<rect key="frame" x="140.5" y="8" width="94" height="28"/>
</stepper>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Pgb-CR-d8e">
<rect key="frame" x="258" y="10.5" width="97" height="20.5"/>
<rect key="frame" x="258" y="11" width="97" height="20.5"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -82,15 +81,16 @@
<rect key="frame" x="0.0" y="239.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="G5u-Bn-eCH" id="mOU-DX-EXS">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<stepper opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" maximumValue="10" translatesAutoresizingMaskIntoConstraints="NO" id="Adb-NR-4zI">
<rect key="frame" x="140.5" y="7.5" width="94" height="29"/>
<rect key="frame" x="140.5" y="8" width="94" height="28"/>
</stepper>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qU1-em-e89">
<rect key="frame" x="258" y="10.5" width="97" height="20.5"/>
<rect key="frame" x="258" y="11" width="97" height="20.5"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="zcI-oN-J3j">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14800.2" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="zcI-oN-J3j">
<device id="retina4_7" orientation="portrait"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14758.1"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -15,7 +13,7 @@
<tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="4ER-nG-feZ">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<sections>
<tableViewSection headerTitle="Default" id="A1X-FU-XOh">
<cells>
@ -23,7 +21,7 @@
<rect key="frame" x="0.0" y="55.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="kaW-Np-hDH" id="q8w-Lw-NG5">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<switch opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" on="YES" translatesAutoresizingMaskIntoConstraints="NO" id="juD-bH-XxM">
@ -44,7 +42,7 @@
<rect key="frame" x="0.0" y="147.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="yon-1U-p9a" id="wAh-qG-cWE">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<switch opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" on="YES" translatesAutoresizingMaskIntoConstraints="NO" id="w5d-qp-nmC">

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="DSJ-7r-oCY">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="DSJ-7r-oCY">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@ -15,7 +13,7 @@
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="dyj-uS-k8j">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<sections>
<tableViewSection headerTitle="Default" id="2JS-A6-933">
<cells>
@ -23,25 +21,24 @@
<rect key="frame" x="0.0" y="55.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="tt6-SE-2XG" id="V1m-oL-rpG">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="fOd-9f-iUr">
<rect key="frame" x="77.5" y="7" width="220" height="30"/>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="d0M-ZQ-Bl5">
<rect key="frame" x="77.5" y="5" width="220" height="34"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="3ss-5a-v0K"/>
<constraint firstAttribute="width" constant="220" id="l5I-Np-RAv"/>
<constraint firstAttribute="width" constant="220" id="SkU-sM-X8n"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits"/>
<connections>
<outlet property="delegate" destination="DSJ-7r-oCY" id="t3p-lp-DTI"/>
<outlet property="delegate" destination="DSJ-7r-oCY" id="ctm-bX-Oxa"/>
</connections>
</textField>
</subviews>
<constraints>
<constraint firstAttribute="centerY" secondItem="fOd-9f-iUr" secondAttribute="centerY" id="2Nc-fe-vbY"/>
<constraint firstAttribute="centerX" secondItem="fOd-9f-iUr" secondAttribute="centerX" id="xXF-9e-Cbc"/>
<constraint firstItem="d0M-ZQ-Bl5" firstAttribute="centerY" secondItem="V1m-oL-rpG" secondAttribute="centerY" id="t7K-C9-UtL"/>
<constraint firstItem="d0M-ZQ-Bl5" firstAttribute="centerX" secondItem="V1m-oL-rpG" secondAttribute="centerX" id="u0Y-TA-d2a"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
@ -53,25 +50,24 @@
<rect key="frame" x="0.0" y="147.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="ByO-KF-g5d" id="3ka-jS-1aS">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="Fvi-gE-c6J">
<rect key="frame" x="77.5" y="7" width="220" height="30"/>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="cMZ-kh-7qC">
<rect key="frame" x="77.5" y="5" width="220" height="34"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="8L9-mt-FGy"/>
<constraint firstAttribute="width" constant="220" id="tgP-nC-J0U"/>
<constraint firstAttribute="width" constant="220" id="mK5-gY-ciJ"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits"/>
<connections>
<outlet property="delegate" destination="DSJ-7r-oCY" id="TZJ-aR-R2s"/>
<outlet property="delegate" destination="DSJ-7r-oCY" id="kMQ-KL-sNz"/>
</connections>
</textField>
</subviews>
<constraints>
<constraint firstAttribute="centerX" secondItem="Fvi-gE-c6J" secondAttribute="centerX" id="6t8-rj-CCz"/>
<constraint firstAttribute="centerY" secondItem="Fvi-gE-c6J" secondAttribute="centerY" id="uK0-fk-jYY"/>
<constraint firstItem="cMZ-kh-7qC" firstAttribute="centerY" secondItem="3ka-jS-1aS" secondAttribute="centerY" id="aeT-Q6-LcM"/>
<constraint firstItem="cMZ-kh-7qC" firstAttribute="centerX" secondItem="3ka-jS-1aS" secondAttribute="centerX" id="beb-bt-uhP"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
@ -83,25 +79,24 @@
<rect key="frame" x="0.0" y="239.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="EAr-Is-gih" id="Pbu-Mo-uwJ">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="aoW-8L-ecd">
<rect key="frame" x="77.5" y="7" width="220" height="30"/>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="6hY-Wr-WkQ">
<rect key="frame" x="77.5" y="5" width="220" height="34"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="Oqq-El-L2F"/>
<constraint firstAttribute="width" constant="220" id="ZtA-5X-j9e"/>
<constraint firstAttribute="width" constant="220" id="G3c-qp-XID"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits"/>
<connections>
<outlet property="delegate" destination="DSJ-7r-oCY" id="Qxe-z9-DhV"/>
<outlet property="delegate" destination="DSJ-7r-oCY" id="Zmt-rK-fSU"/>
</connections>
</textField>
</subviews>
<constraints>
<constraint firstAttribute="centerX" secondItem="aoW-8L-ecd" secondAttribute="centerX" id="EM5-fQ-fmm"/>
<constraint firstAttribute="centerY" secondItem="aoW-8L-ecd" secondAttribute="centerY" id="btA-SA-way"/>
<constraint firstItem="6hY-Wr-WkQ" firstAttribute="centerY" secondItem="Pbu-Mo-uwJ" secondAttribute="centerY" id="OnO-T7-ZUU"/>
<constraint firstItem="6hY-Wr-WkQ" firstAttribute="centerX" secondItem="Pbu-Mo-uwJ" secondAttribute="centerX" id="aGR-0Y-ycU"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
@ -113,25 +108,24 @@
<rect key="frame" x="0.0" y="331.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="mGp-N1-iXx" id="odC-GC-3EW">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="AiQ-Jv-26x">
<rect key="frame" x="77.5" y="7" width="220" height="30"/>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="3ok-UO-qNK">
<rect key="frame" x="77.5" y="5" width="220" height="34"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="ACc-2q-Tjp"/>
<constraint firstAttribute="width" constant="220" id="q96-9f-mNn"/>
<constraint firstAttribute="width" constant="220" id="d07-kK-qmr"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits"/>
<connections>
<outlet property="delegate" destination="DSJ-7r-oCY" id="JED-RQ-RYW"/>
<outlet property="delegate" destination="DSJ-7r-oCY" id="CjX-Df-Mh3"/>
</connections>
</textField>
</subviews>
<constraints>
<constraint firstAttribute="centerX" secondItem="AiQ-Jv-26x" secondAttribute="centerX" id="ErC-NE-24a"/>
<constraint firstAttribute="centerY" secondItem="AiQ-Jv-26x" secondAttribute="centerY" id="heh-BX-iNS"/>
<constraint firstItem="3ok-UO-qNK" firstAttribute="centerY" secondItem="odC-GC-3EW" secondAttribute="centerY" id="O8S-Pd-mBi"/>
<constraint firstItem="3ok-UO-qNK" firstAttribute="centerX" secondItem="odC-GC-3EW" secondAttribute="centerX" id="ZvK-c6-Jps"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
@ -143,20 +137,18 @@
<rect key="frame" x="0.0" y="423.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="p2q-cS-yAy" id="bAa-ty-BjE">
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="6mq-oY-1e5">
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="6mq-oY-1e5" customClass="CustomTextField" customModule="UIKitCatalog" customModuleProvider="target">
<rect key="frame" x="77.5" y="7" width="220" height="30"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="Oha-uj-d5N"/>
<constraint firstAttribute="width" constant="220" id="eUf-Cr-cPr"/>
</constraints>
<nil key="textColor"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits"/>
<connections>
<outlet property="delegate" destination="DSJ-7r-oCY" id="u20-mP-wrK"/>
</connections>
</textField>
</subviews>
<constraints>
@ -167,6 +159,30 @@
</tableViewCell>
</cells>
</tableViewSection>
<tableViewSection headerTitle="Search" id="VUY-JJ-17B" userLabel="Search">
<cells>
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" id="bAz-f1-WeK">
<rect key="frame" x="0.0" y="515.5" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="bAz-f1-WeK" id="Kgt-hf-9Hx">
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="gmJ-iC-UR1" customClass="UISearchTextField">
<rect key="frame" x="16" y="5" width="343" height="34"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits"/>
</textField>
</subviews>
<constraints>
<constraint firstItem="gmJ-iC-UR1" firstAttribute="leading" secondItem="Kgt-hf-9Hx" secondAttribute="leading" constant="16" id="28g-0I-bAe"/>
<constraint firstAttribute="trailing" secondItem="gmJ-iC-UR1" secondAttribute="trailing" constant="16" id="Jz1-Nh-QXZ"/>
<constraint firstItem="gmJ-iC-UR1" firstAttribute="centerY" secondItem="Kgt-hf-9Hx" secondAttribute="centerY" id="Wkh-l0-hl5"/>
</constraints>
</tableViewCellContentView>
</tableViewCell>
</cells>
</tableViewSection>
</sections>
<connections>
<outlet property="dataSource" destination="DSJ-7r-oCY" id="13x-bY-Aua"/>
@ -177,15 +193,16 @@
<simulatedNavigationBarMetrics key="simulatedTopBarMetrics" prompted="NO"/>
<connections>
<outlet property="customTextField" destination="6mq-oY-1e5" id="Hmo-kx-Ova"/>
<outlet property="secureTextField" destination="aoW-8L-ecd" id="Ewm-F2-5jz"/>
<outlet property="specificKeyboardTextField" destination="AiQ-Jv-26x" id="5j6-E8-GPQ"/>
<outlet property="textField" destination="fOd-9f-iUr" id="Fbj-2a-Kha"/>
<outlet property="tintedTextField" destination="Fvi-gE-c6J" id="xRs-nI-mK6"/>
<outlet property="searchTextField" destination="gmJ-iC-UR1" id="9C4-Vs-FF9"/>
<outlet property="secureTextField" destination="6hY-Wr-WkQ" id="Q5H-ZR-LOf"/>
<outlet property="specificKeyboardTextField" destination="3ok-UO-qNK" id="6Ba-Of-HrL"/>
<outlet property="textField" destination="d0M-ZQ-Bl5" id="vN0-aU-p1n"/>
<outlet property="tintedTextField" destination="cMZ-kh-7qC" id="nd8-iZ-8dm"/>
</connections>
</tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="OdI-IP-47Q" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="7049" y="3368"/>
<point key="canvasLocation" x="7048.8000000000002" y="3367.4662668665669"/>
</scene>
</scenes>
</document>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="pUP-b0-VMf">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="pUP-b0-VMf">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -18,11 +16,10 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<textView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" usesAttributedText="YES" translatesAutoresizingMaskIntoConstraints="NO" id="V59-C7-Tgr">
<rect key="frame" x="0.0" y="20" width="375" height="647"/>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<rect key="frame" x="16" y="0.0" width="343" height="647"/>
<attributedString key="attributedText">
<fragment>
<string key="content">This is a UITextView that uses attributed text. You can programmatically modify the display of the text by making it bold, highlighted, underlined, tinted, and more. These attributes are defined in NSAttributedString.h. You can even embed attachments in an NSAttributedString!
<string key="content">This is a UITextView that uses attributed text. You can programmatically modify the display of the text by making it bold, highlighted, underlined, tinted, symbols, and more. These attributes are defined in NSAttributedString.h. You can even embed attachments in an NSAttributedString!
</string>
<attributes>
@ -45,25 +42,25 @@
</connections>
</textView>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="bSK-Jp-Ogb" firstAttribute="trailing" secondItem="V59-C7-Tgr" secondAttribute="trailing" id="LTf-yc-iv8"/>
<constraint firstItem="V59-C7-Tgr" firstAttribute="top" secondItem="bSK-Jp-Ogb" secondAttribute="top" id="UPE-cK-aPj"/>
<constraint firstItem="bSK-Jp-Ogb" firstAttribute="bottom" secondItem="V59-C7-Tgr" secondAttribute="bottom" id="iXO-2j-qCW"/>
<constraint firstItem="V59-C7-Tgr" firstAttribute="leading" secondItem="bSK-Jp-Ogb" secondAttribute="leading" id="zHm-28-gsL"/>
<constraint firstItem="bSK-Jp-Ogb" firstAttribute="bottom" secondItem="V59-C7-Tgr" secondAttribute="bottom" constant="20" id="9rv-7g-PRc"/>
<constraint firstItem="V59-C7-Tgr" firstAttribute="top" secondItem="bSK-Jp-Ogb" secondAttribute="top" id="dbh-pc-3hv"/>
<constraint firstItem="bSK-Jp-Ogb" firstAttribute="trailing" secondItem="V59-C7-Tgr" secondAttribute="trailing" constant="16" id="e3E-yJ-Jhr"/>
<constraint firstItem="V59-C7-Tgr" firstAttribute="leading" secondItem="bSK-Jp-Ogb" secondAttribute="leading" constant="16" id="pw6-zy-Ygc"/>
</constraints>
<viewLayoutGuide key="safeArea" id="bSK-Jp-Ogb"/>
</view>
<navigationItem key="navigationItem" title="Text View" id="ZRc-vB-83q"/>
<connections>
<outlet property="textView" destination="V59-C7-Tgr" id="XcF-yp-sdb"/>
<outlet property="textViewBottomLayoutGuideConstraint" destination="iXO-2j-qCW" id="N1Y-5F-zdP"/>
<outlet property="textViewBottomLayoutGuideConstraint" destination="9rv-7g-PRc" id="ZfA-Y5-QqU"/>
<outlet property="view" destination="eAJ-am-dgQ" id="Bmb-io-4kq"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="wVk-pN-HXB" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="8018" y="3368"/>
<point key="canvasLocation" x="8016.8000000000002" y="3367.4662668665669"/>
</scene>
</scenes>
</document>

View file

@ -1,11 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13529" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="c6p-Xx-oIp">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="c6p-Xx-oIp">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13527"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -17,77 +14,77 @@
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="LTn-gr-hZ8">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<sections>
<tableViewSection id="AHg-6c-Oal">
<cells>
<tableViewCell contentMode="scaleToFill" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="fHY-G6-SeT" detailTextLabel="kdv-kM-q9h" style="IBUITableViewCellStyleSubtitle" id="pj0-1u-E34">
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<rect key="frame" x="0.0" y="28" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="pj0-1u-E34" id="mw3-QG-qmd">
<rect key="frame" x="0.0" y="0.0" width="341" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="347.5" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Default" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="fHY-G6-SeT">
<rect key="frame" x="16" y="6" width="52.5" height="19.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="DefaultToolbarViewController" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="kdv-kM-q9h">
<rect key="frame" x="16" y="25.5" width="154" height="13.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="11"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</tableViewCellContentView>
</tableViewCell>
<tableViewCell contentMode="scaleToFill" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="qZW-jm-JTQ" detailTextLabel="79J-gR-evh" style="IBUITableViewCellStyleSubtitle" id="AeX-Df-b63">
<rect key="frame" x="0.0" y="44" width="375" height="44"/>
<rect key="frame" x="0.0" y="72" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="AeX-Df-b63" id="IgD-XL-7J6">
<rect key="frame" x="0.0" y="0.0" width="341" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="347.5" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Tinted" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="qZW-jm-JTQ">
<rect key="frame" x="16" y="6" width="46.5" height="19.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="TintedToolbarViewController" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="79J-gR-evh">
<rect key="frame" x="16" y="25.5" width="150" height="13.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="11"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</tableViewCellContentView>
</tableViewCell>
<tableViewCell contentMode="scaleToFill" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="cGP-R0-3AR" detailTextLabel="d9W-t5-m5X" style="IBUITableViewCellStyleSubtitle" id="BdV-XK-QEd">
<rect key="frame" x="0.0" y="88" width="375" height="44"/>
<rect key="frame" x="0.0" y="116" width="375" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="BdV-XK-QEd" id="9ue-A6-9eP">
<rect key="frame" x="0.0" y="0.0" width="341" height="43.5"/>
<rect key="frame" x="0.0" y="0.0" width="347.5" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Custom" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="cGP-R0-3AR">
<rect key="frame" x="16" y="6" width="56.5" height="19.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="CustomToolbarViewController" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="d9W-t5-m5X">
<rect key="frame" x="16" y="25.5" width="156" height="13.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="11"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
@ -122,7 +119,7 @@
</items>
</toolbar>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstAttribute="trailing" secondItem="LGv-47-hp1" secondAttribute="trailing" id="TDd-jp-pco"/>
<constraint firstItem="iLs-8f-QKM" firstAttribute="bottom" secondItem="LGv-47-hp1" secondAttribute="bottom" id="lBP-QD-cDg"/>
@ -154,7 +151,7 @@
</items>
</toolbar>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="I9n-Qd-HUD" firstAttribute="leading" secondItem="YY9-uv-rey" secondAttribute="leading" id="B3z-kQ-j9a"/>
<constraint firstAttribute="trailing" secondItem="I9n-Qd-HUD" secondAttribute="trailing" id="oAs-UM-W27"/>
@ -186,7 +183,7 @@
</items>
</toolbar>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstAttribute="trailing" secondItem="7kf-gK-q2z" secondAttribute="trailing" id="6dJ-I0-xXQ"/>
<constraint firstItem="7kf-gK-q2z" firstAttribute="leading" secondItem="lTJ-Dz-yrG" secondAttribute="leading" id="Yfg-8z-IMR"/>

View file

@ -1,10 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="i9U-A8-mkf">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14810.12" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="i9U-A8-mkf">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14766.15"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -26,12 +24,12 @@
</wkWebViewConfiguration>
</wkWebView>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<color key="backgroundColor" xcode11CocoaTouchSystemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="2L2-qR-4mQ" firstAttribute="bottom" secondItem="cu4-ZC-P43" secondAttribute="bottom" id="Yzw-MH-mMD"/>
<constraint firstItem="2L2-qR-4mQ" firstAttribute="top" secondItem="cu4-ZC-P43" secondAttribute="top" constant="20" id="klp-F9-Fdi"/>
<constraint firstItem="cu4-ZC-P43" firstAttribute="leading" secondItem="2L2-qR-4mQ" secondAttribute="leading" id="mOa-eb-xkv"/>
<constraint firstItem="2L2-qR-4mQ" firstAttribute="trailing" secondItem="cu4-ZC-P43" secondAttribute="trailing" id="nPH-BV-Pe3"/>
<constraint firstAttribute="bottom" secondItem="cu4-ZC-P43" secondAttribute="bottom" id="Yzw-MH-mMD"/>
<constraint firstAttribute="top" secondItem="cu4-ZC-P43" secondAttribute="top" id="klp-F9-Fdi"/>
<constraint firstItem="cu4-ZC-P43" firstAttribute="leading" secondItem="cde-Ag-lVB" secondAttribute="leading" id="mOa-eb-xkv"/>
<constraint firstAttribute="trailing" secondItem="cu4-ZC-P43" secondAttribute="trailing" id="nPH-BV-Pe3"/>
</constraints>
<viewLayoutGuide key="safeArea" id="2L2-qR-4mQ"/>
</view>

View file

@ -1,9 +1,15 @@
<!doctype html>
<html>
<body>
<center>
<br><br>
<h1>This is HTML content inside a <u>WKWebView</u>.</h1>
</center>
</body>
<html lang="en">
<head>
<title>WKWebView</title>
<style>
:root {
color-scheme: light dark;
}
</style>
</head>
<body>
<br><br>
<h1>This is HTML content inside a <u>WKWebView</u>.</h1>
</body>
</html>

View file

@ -20,12 +20,14 @@ class BaseTableViewController: UITableViewController {
navigationController?.delegate = self // So we can listen when we come and go on the nav stack.
detailTargetChange = NotificationCenter.default.addObserver(
forName: NSNotification.Name.UIViewControllerShowDetailTargetDidChange,
forName: UIViewController.showDetailTargetDidChangeNotification,
object: nil,
queue: OperationQueue.main) { [unowned self] (_) in
queue: OperationQueue.main) { [weak self] (_) in
// Whenever the target for showDetailViewController changes, update all of our cells
// to ensure they have the right accessory type.
//
guard let self = self else { return }
for cell in self.tableView.visibleCells {
let indexPath = self.tableView.indexPath(for: cell)
self.tableView.delegate?.tableView!(self.tableView, willDisplay: cell, forRowAt: indexPath!)
@ -38,10 +40,6 @@ class BaseTableViewController: UITableViewController {
super.viewWillAppear(animated)
}
deinit {
NotificationCenter.default.removeObserver(detailTargetChange)
}
// MARK: Utility functions
func configureCell(cell: UITableViewCell, indexPath: IndexPath) {

View file

@ -15,14 +15,12 @@ class ButtonViewController: UITableViewController {
// MARK: - Properties
@IBOutlet weak var systemTextButton: UIButton!
@IBOutlet weak var systemContactAddButton: UIButton!
@IBOutlet weak var systemDetailDisclosureButton: UIButton!
@IBOutlet weak var imageButton: UIButton!
@IBOutlet weak var attributedTextButton: UIButton!
@IBOutlet weak var symbolButton: UIButton!
@IBOutlet weak var symbolTextButton: UIButton!
// MARK: - View Life Cycle
@ -35,6 +33,8 @@ class ButtonViewController: UITableViewController {
configureSystemDetailDisclosureButton()
configureImageButton()
configureAttributedTextSystemButton()
configureSymbolButton()
configureSymbolTextButton()
}
// MARK: - Configuration
@ -65,13 +65,13 @@ class ButtonViewController: UITableViewController {
// Remove the title text.
imageButton.setTitle("", for: .normal)
imageButton.tintColor = UIColor(named: "Tint_Purple_Color")
imageButton.tintColor = UIColor.systemPurple
let imageButtonNormalImage = #imageLiteral(resourceName: "x_icon")
imageButton.setImage(imageButtonNormalImage, for: .normal)
// Add an accessibility label to the image.
imageButton.accessibilityLabel = NSLocalizedString("X Button", comment: "")
imageButton.accessibilityLabel = NSLocalizedString("X", comment: "")
imageButton.addTarget(self, action: #selector(ButtonViewController.buttonClicked(_:)), for: .touchUpInside)
}
@ -80,25 +80,50 @@ class ButtonViewController: UITableViewController {
let buttonTitle = NSLocalizedString("Button", comment: "")
// Set the button's title for normal state.
let normalTitleAttributes: [NSAttributedStringKey: Any] = [
NSAttributedStringKey.foregroundColor: UIColor(named: "Tint_Blue_Color")!,
NSAttributedStringKey.strikethroughStyle: NSUnderlineStyle.styleSingle.rawValue
let normalTitleAttributes: [NSAttributedString.Key: Any] = [
NSAttributedString.Key.foregroundColor: UIColor.systemBlue,
NSAttributedString.Key.strikethroughStyle: NSUnderlineStyle.single.rawValue
]
let normalAttributedTitle = NSAttributedString(string: buttonTitle, attributes: normalTitleAttributes)
attributedTextButton.setAttributedTitle(normalAttributedTitle, for: .normal)
// Set the button's title for highlighted state.
let highlightedTitleAttributes = [
NSAttributedStringKey.foregroundColor: UIColor.green,
NSAttributedStringKey.strikethroughStyle: NSUnderlineStyle.styleThick.rawValue
] as [NSAttributedStringKey: Any]
let highlightedTitleAttributes: [NSAttributedString.Key: Any] = [
NSAttributedString.Key.foregroundColor: UIColor.systemGreen,
NSAttributedString.Key.strikethroughStyle: NSUnderlineStyle.thick.rawValue
]
let highlightedAttributedTitle = NSAttributedString(string: buttonTitle, attributes: highlightedTitleAttributes)
attributedTextButton.setAttributedTitle(highlightedAttributedTitle, for: .highlighted)
attributedTextButton.addTarget(self, action: #selector(ButtonViewController.buttonClicked(_:)), for: .touchUpInside)
}
func configureSymbolButton() {
let buttonImage = UIImage(systemName: "person")
symbolButton.setImage(buttonImage, for: .normal)
// Add an accessibility label to the image.
symbolButton.accessibilityLabel = NSLocalizedString("Person", comment: "")
symbolButton.addTarget(self,
action: #selector(ButtonViewController.buttonClicked(_:)),
for: .touchUpInside)
}
func configureSymbolTextButton() {
let buttonImage = UIImage(systemName: "person")
symbolTextButton.setImage(buttonImage, for: .normal)
symbolTextButton.addTarget(self,
action: #selector(ButtonViewController.buttonClicked(_:)),
for: .touchUpInside)
symbolTextButton.titleLabel?.font = UIFont.preferredFont(forTextStyle: .body)
let config = UIImage.SymbolConfiguration(textStyle: .body, scale: .small)
symbolTextButton.setPreferredSymbolConfiguration(config, forImageIn: .normal)
}
// MARK: - Actions
@objc

View file

@ -26,16 +26,16 @@ class CustomSearchBarViewController: UIViewController {
searchBar.showsCancelButton = true
searchBar.showsBookmarkButton = true
searchBar.tintColor = UIColor(named: "Tint_Purple_Color")
searchBar.tintColor = UIColor.systemPurple
searchBar.backgroundImage = UIImage(named: "search_bar_background")
// Set the bookmark image for both normal and highlighted states.
let bookmarkImage = #imageLiteral(resourceName: "bookmark_icon")
searchBar.setImage(bookmarkImage, for: .bookmark, state: .normal)
let bookImage = UIImage(systemName: "bookmark")
searchBar.setImage(bookImage, for: .bookmark, state: .normal)
let bookmarkHighlightedImage = #imageLiteral(resourceName: "bookmark_icon_highlighted")
searchBar.setImage(bookmarkHighlightedImage, for: .bookmark, state: .highlighted)
let bookFillImage = UIImage(systemName: "bookmark.fill")
searchBar.setImage(bookFillImage, for: .bookmark, state: .highlighted)
}
}

View file

@ -31,14 +31,14 @@ class CustomToolbarViewController: UIViewController {
// MARK: - UIBarButtonItem Creation and Configuration
var customImageBarButtonItem: UIBarButtonItem {
let customBarButtonItemImage = #imageLiteral(resourceName: "tools_icon")
let customBarButtonItemImage = UIImage(systemName: "exclamationmark.triangle")
let customImageBarButtonItem = UIBarButtonItem(image: customBarButtonItemImage,
style: .plain,
target: self,
action: #selector(CustomToolbarViewController.barButtonItemClicked(_:)))
customImageBarButtonItem.tintColor = UIColor(named: "Tint_Purple_Color")
customImageBarButtonItem.tintColor = UIColor.systemPurple
return customImageBarButtonItem
}
@ -52,10 +52,10 @@ class CustomToolbarViewController: UIViewController {
let barButtonItem = UIBarButtonItem(title: NSLocalizedString("Button", comment: ""),
style: .plain,
target: self,
action: #selector(CustomToolbarViewController.barButtonItemClicked(_:)))
action: #selector(CustomToolbarViewController.barButtonItemClicked))
let attributes = [
NSAttributedStringKey.foregroundColor: UIColor(named: "Tint_Purple_Color")!
NSAttributedString.Key.foregroundColor: UIColor.systemPurple
]
barButtonItem.setTitleTextAttributes(attributes, for: .normal)
@ -68,4 +68,5 @@ class CustomToolbarViewController: UIViewController {
func barButtonItemClicked(_ barButtonItem: UIBarButtonItem) {
print("A bar button item on the custom toolbar was clicked: \(barButtonItem).")
}
}

View file

@ -34,7 +34,7 @@ class DetailViewManager: NSObject, UISplitViewControllerDelegate {
// MARK: - UISplitViewControllerDelegate
func targetDisplayModeForAction(in splitViewController: UISplitViewController) -> UISplitViewControllerDisplayMode {
func targetDisplayModeForAction(in splitViewController: UISplitViewController) -> UISplitViewController.DisplayMode {
return .allVisible
}

View file

@ -22,16 +22,11 @@ class ImageViewController: UIViewController {
// The root view of the view controller is set in Interface Builder and is an UIImageView.
if let imageView = view as? UIImageView {
// Fetch the images (each image is of the format Flowers_number).
imageView.animationImages = (1...5).map { UIImage(named: "Flowers_\($0)")! }
imageView.animationImages = (1...2).map { UIImage(named: "Flowers_\($0)")! }
// We want the image to be scaled to the correct aspect ratio within imageView's bounds.
imageView.contentMode = .scaleAspectFit
/** If the image does not have the same aspect ratio as imageView's bounds,
then imageView's backgroundColor will be applied to the "empty" space.
*/
imageView.backgroundColor = UIColor.white
imageView.animationDuration = 5
imageView.startAnimating()

View file

@ -37,6 +37,11 @@ class MasterViewController: BaseTableViewController {
Example(title: "Web View", subTitle: "WebViewController", twoLevel: false)
]
override func viewDidLoad() {
super.viewDidLoad()
//..
}
override func isTwoLevelCell(indexPath: IndexPath) -> Bool {
var twoLevelCell = false
twoLevelCell = exampleList[indexPath.row].twoLevel

View file

@ -17,15 +17,15 @@ class PageControlViewController: UIViewController {
// Colors that correspond to the selected page. Used as the background color for `colorView`.
let colors = [
UIColor.black,
UIColor.gray,
UIColor.red,
UIColor.green,
UIColor.blue,
UIColor.cyan,
UIColor.yellow,
UIColor.magenta,
UIColor.orange,
UIColor.purple
UIColor.systemGray,
UIColor.systemRed,
UIColor.systemGreen,
UIColor.systemBlue,
UIColor.systemPink,
UIColor.systemYellow,
UIColor.systemIndigo,
UIColor.systemOrange,
UIColor.systemPurple
]
// MARK: - View Life Cycle
@ -44,8 +44,8 @@ class PageControlViewController: UIViewController {
pageControl.numberOfPages = colors.count
pageControl.currentPage = 2
pageControl.pageIndicatorTintColor = UIColor(named: "Tint_Green_Color")
pageControl.currentPageIndicatorTintColor = UIColor(named: "Tint_Purple_Color")
pageControl.pageIndicatorTintColor = UIColor.systemGreen
pageControl.currentPageIndicatorTintColor = UIColor.systemPurple
pageControl.addTarget(self, action: #selector(PageControlViewController.pageControlValueDidChange), for: .valueChanged)
}

View file

@ -62,9 +62,6 @@ class PickerViewController: UIViewController {
}
func configurePickerView() {
// Show that a given row is selected. This is off by default.
pickerView.showsSelectionIndicator = true
// Set the default selected rows (the desired rows to initially select will vary from app to app).
let selectedRows: [ColorComponent: Int] = [.red: 13, .green: 41, .blue: 24]
@ -115,11 +112,20 @@ extension PickerViewController: UIPickerViewDelegate {
blueColorComponent = value
}
let foregroundColor = UIColor(red: redColorComponent, green: greenColorComponent, blue: blueColorComponent, alpha: 1)
if redColorComponent < 0.5 {
redColorComponent = 0.5
}
if blueColorComponent < 0.5 {
blueColorComponent = 0.5
}
if greenColorComponent < 0.5 {
greenColorComponent = 0.5
}
let foregroundColor = UIColor(red: redColorComponent, green: greenColorComponent, blue: blueColorComponent, alpha: 1.0)
// Set the foreground color for the entire attributed string.
let attributes = [
NSAttributedStringKey.foregroundColor: foregroundColor
NSAttributedString.Key.foregroundColor: foregroundColor
]
let title = NSMutableAttributedString(string: "\(Int(colorValue))", attributes: attributes)

View file

@ -102,8 +102,8 @@ class ProgressViewController: UITableViewController {
func configureTintedProgressView() {
tintedProgressView.progressViewStyle = .default
tintedProgressView.trackTintColor = UIColor(named: "Tint_Blue_Color")
tintedProgressView.progressTintColor = UIColor(named: "Tint_Purple_Color")
tintedProgressView.trackTintColor = UIColor.systemBlue
tintedProgressView.progressTintColor = UIColor.systemPurple
}
}

View file

@ -11,11 +11,8 @@ class SegmentedControlViewController: UITableViewController {
// MARK: - Properties
@IBOutlet weak var defaultSegmentedControl: UISegmentedControl!
@IBOutlet weak var tintedSegmentedControl: UISegmentedControl!
@IBOutlet weak var customSegmentsSegmentedControl: UISegmentedControl!
@IBOutlet weak var customBackgroundSegmentedControl: UISegmentedControl!
// MARK: - View Life Cycle
@ -32,14 +29,15 @@ class SegmentedControlViewController: UITableViewController {
// MARK: - Configuration
func configureDefaultSegmentedControl() {
// As a demonstration, disable the first segment.
defaultSegmentedControl.setEnabled(false, forSegmentAt: 0)
defaultSegmentedControl.addTarget(self, action: #selector(SegmentedControlViewController.selectedSegmentDidChange(_:)), for: .valueChanged)
}
func configureTintedSegmentedControl() {
tintedSegmentedControl.tintColor = UIColor(named: "Tint_Blue_Color")
// Use a dynamic tinted color (separate one for Light Appearance and separate one for Dark Appearance).
tintedSegmentedControl.tintColor = UIColor(named: "tinted_segmented_control")!
tintedSegmentedControl.selectedSegmentIndex = 1
@ -47,25 +45,17 @@ class SegmentedControlViewController: UITableViewController {
}
func configureCustomSegmentsSegmentedControl() {
let imageToAccessibilityLabelMappings = [
"checkmark_icon": NSLocalizedString("Done", comment: ""),
"search_icon": NSLocalizedString("Search", comment: ""),
"tools_icon": NSLocalizedString("Settings", comment: "")
]
let airplaneImage = UIImage(systemName: "airplane")
airplaneImage?.accessibilityLabel = NSLocalizedString("Airplane", comment: "")
customSegmentsSegmentedControl.setImage(airplaneImage, forSegmentAt: 0)
// Guarantee that the segments show up in the same order.
var sortedSegmentImageNames = Array(imageToAccessibilityLabelMappings.keys)
sortedSegmentImageNames.sort { lhs, rhs in
return lhs.localizedStandardCompare(rhs) == ComparisonResult.orderedAscending
}
let giftImage = UIImage(systemName: "gift")
giftImage?.accessibilityLabel = NSLocalizedString("Gift", comment: "")
customSegmentsSegmentedControl.setImage(giftImage, forSegmentAt: 1)
for (idx, segmentImageName) in sortedSegmentImageNames.enumerated() {
let image = UIImage(named: segmentImageName)!
image.accessibilityLabel = imageToAccessibilityLabelMappings[segmentImageName]
customSegmentsSegmentedControl.setImage(image, forSegmentAt: idx)
}
let burstImage = UIImage(systemName: "burst")
burstImage?.accessibilityLabel = NSLocalizedString("Burst", comment: "")
customSegmentsSegmentedControl.setImage(burstImage, forSegmentAt: 2)
customSegmentsSegmentedControl.selectedSegmentIndex = 0
@ -99,14 +89,14 @@ class SegmentedControlViewController: UITableViewController {
let font = UIFont(descriptor: captionFontDescriptor, size: 0)
let normalTextAttributes = [
NSAttributedStringKey.foregroundColor: UIColor(named: "Tint_Purple_Color")!,
NSAttributedStringKey.font: font
NSAttributedString.Key.foregroundColor: UIColor.systemPurple,
NSAttributedString.Key.font: font
]
customBackgroundSegmentedControl.setTitleTextAttributes(normalTextAttributes, for: .normal)
let highlightedTextAttributes = [
NSAttributedStringKey.foregroundColor: UIColor(named: "Tint_Green_Color")!,
NSAttributedStringKey.font: font
NSAttributedString.Key.foregroundColor: UIColor.systemGreen,
NSAttributedString.Key.font: font
]
customBackgroundSegmentedControl.setTitleTextAttributes(highlightedTextAttributes, for: .highlighted)

View file

@ -13,6 +13,7 @@ class SliderViewController: UITableViewController {
@IBOutlet weak var defaultSlider: UISlider!
@IBOutlet weak var tintedSlider: UISlider!
@IBOutlet weak var customSlider: UISlider!
@IBOutlet weak var minMaxImageSlider: UISlider!
// MARK: - View Life Cycle
@ -22,6 +23,7 @@ class SliderViewController: UITableViewController {
configureDefaultSlider()
configureTintedSlider()
configureCustomSlider()
configureMinMaxImageSlider()
}
// MARK: - Configuration
@ -36,8 +38,8 @@ class SliderViewController: UITableViewController {
}
func configureTintedSlider() {
tintedSlider.minimumTrackTintColor = UIColor(named: "Tint_Blue_Color")
tintedSlider.maximumTrackTintColor = UIColor(named: "Tint_Purple_Color")
tintedSlider.minimumTrackTintColor = UIColor.systemBlue
tintedSlider.maximumTrackTintColor = UIColor.systemPurple
tintedSlider.addTarget(self, action: #selector(SliderViewController.sliderValueDidChange(_:)), for: .valueChanged)
}
@ -49,8 +51,12 @@ class SliderViewController: UITableViewController {
let rightTrackImage = UIImage(named: "slider_green_track")
customSlider.setMaximumTrackImage(rightTrackImage, for: .normal)
let thumbImage = UIImage(named: "slider_thumb")
// Set the sliding thumb image (normal and highlighted).
let thumbImageConfig = UIImage.SymbolConfiguration(scale: .large)
let thumbImage = UIImage(systemName: "circle.fill", withConfiguration: thumbImageConfig)
customSlider.setThumbImage(thumbImage, for: .normal)
let thumbImageHighlighted = UIImage(systemName: "circle", withConfiguration: thumbImageConfig)
customSlider.setThumbImage(thumbImageHighlighted, for: .highlighted)
customSlider.minimumValue = 0
customSlider.maximumValue = 100
@ -60,6 +66,13 @@ class SliderViewController: UITableViewController {
customSlider.addTarget(self, action: #selector(SliderViewController.sliderValueDidChange(_:)), for: .valueChanged)
}
func configureMinMaxImageSlider() {
minMaxImageSlider.minimumValueImage = UIImage(systemName: "tortoise")
minMaxImageSlider.maximumValueImage = UIImage(systemName: "hare")
minMaxImageSlider.addTarget(self, action: #selector(SliderViewController.sliderValueDidChange(_:)), for: .valueChanged)
}
// MARK: - Actions
@objc

View file

@ -45,7 +45,7 @@ class StepperViewController: UITableViewController {
}
func configureTintedStepper() {
tintedStepper.tintColor = UIColor(named: "Tint_Blue_Color")
tintedStepper.tintColor = UIColor(named: "tinted_stepper_control")!
tintedStepperLabel.text = "\(Int(tintedStepper.value))"
tintedStepper.addTarget(self, action: #selector(StepperViewController.stepperValueDidChange(_:)), for: .valueChanged)

View file

@ -32,9 +32,9 @@ class SwitchViewController: UITableViewController {
}
func configureTintedSwitch() {
tintedSwitch.tintColor = UIColor(named: "Tint_Blue_Color")
tintedSwitch.onTintColor = UIColor(named: "Tint_Green_Color")
tintedSwitch.thumbTintColor = UIColor(named: "Tint_Purple_Color")
tintedSwitch.tintColor = UIColor.systemBlue
tintedSwitch.onTintColor = UIColor.systemGreen
tintedSwitch.thumbTintColor = UIColor.systemPurple
tintedSwitch.addTarget(self, action: #selector(SwitchViewController.switchValueDidChange(_:)), for: .valueChanged)
}

View file

@ -11,14 +11,11 @@ class TextFieldViewController: UITableViewController {
// MARK: - Properties
@IBOutlet weak var textField: UITextField!
@IBOutlet weak var tintedTextField: UITextField!
@IBOutlet weak var secureTextField: UITextField!
@IBOutlet weak var specificKeyboardTextField: UITextField!
@IBOutlet weak var customTextField: UITextField!
@IBOutlet weak var searchTextField: CustomTextField!
// MARK: View Life Cycle
@ -30,6 +27,7 @@ class TextFieldViewController: UITableViewController {
configureSecureTextField()
configureSpecificKeyboardTextField()
configureCustomTextField()
configureSearchTextField()
}
// MARK: - Configuration
@ -42,8 +40,8 @@ class TextFieldViewController: UITableViewController {
}
func configureTintedTextField() {
tintedTextField.tintColor = UIColor(named: "Tint_Blue_Color")
tintedTextField.textColor = UIColor(named: "Tint_Green_Color")
tintedTextField.tintColor = UIColor.systemBlue
tintedTextField.textColor = UIColor.systemGreen
tintedTextField.placeholder = NSLocalizedString("Placeholder text", comment: "")
tintedTextField.returnKeyType = .done
@ -58,6 +56,25 @@ class TextFieldViewController: UITableViewController {
secureTextField.clearButtonMode = .always
}
func configureSearchTextField() {
searchTextField.placeholder = NSLocalizedString("Enter search text", comment: "")
searchTextField.returnKeyType = .done
searchTextField.clearButtonMode = .always
searchTextField.allowsDeletingTokens = true
// Setup the left view as a symbol image view.
let searchIcon = UIImageView(image: UIImage(systemName: "magnifyingglass"))
searchIcon.tintColor = UIColor.systemGray
searchTextField.leftView = searchIcon
searchTextField.leftViewMode = .always
let secondToken = UISearchToken(icon: UIImage(systemName: "staroflife"), text: "Token 2")
searchTextField.insertToken(secondToken, at: 0)
let firstToken = UISearchToken(icon: UIImage(systemName: "staroflife.fill"), text: "Token 1")
searchTextField.insertToken(firstToken, at: 0)
}
/** There are many different types of keyboards that you may choose to use.
The different types of keyboards are defined in the `UITextInputTraits` interface.
This example shows how to display a keyboard to help enter email addresses.
@ -85,12 +102,6 @@ class TextFieldViewController: UITableViewController {
customTextField.rightView = purpleImageButton
customTextField.rightViewMode = .always
// Add an empty view as the left view to ensure the proper inset between the text and the bounding rectangle.
let leftPaddingView = UIView(frame: CGRect(x: 0, y: 0, width: 10, height: 0))
leftPaddingView.backgroundColor = UIColor.clear
customTextField.leftView = leftPaddingView
customTextField.leftViewMode = .always
customTextField.placeholder = NSLocalizedString("Placeholder text", comment: "")
customTextField.autocorrectionType = .no
customTextField.returnKeyType = .done
@ -100,10 +111,9 @@ class TextFieldViewController: UITableViewController {
@objc
func customTextFieldPurpleButtonClicked() {
customTextField.textColor = UIColor(named: "Tint_Purple_Color")
print("The custom text field's purple right view button was clicked.")
}
}
// MARK: - UITextFieldDelegate
@ -114,4 +124,30 @@ extension TextFieldViewController: UITextFieldDelegate {
return true
}
func textFieldDidChangeSelection(_ textField: UITextField) {
// User changed the text selection.
}
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
// Return false to not change text.
return true
}
}
// Custom text field for controlling input text placement.
class CustomTextField: UISearchTextField {
let leftMarginPadding: CGFloat = 12
override func textRect(forBounds bounds: CGRect) -> CGRect {
var rect = bounds
rect.origin.x += leftMarginPadding
return rect
}
override func editingRect(forBounds bounds: CGRect) -> CGRect {
var rect = bounds
rect.origin.x += leftMarginPadding
return rect
}
}

View file

@ -31,12 +31,12 @@ class TextViewController: UIViewController {
notificationCenter.addObserver(self,
selector: #selector(TextViewController.handleKeyboardNotification(_:)),
name: NSNotification.Name.UIKeyboardWillShow,
name: UIResponder.keyboardWillShowNotification,
object: nil)
notificationCenter.addObserver(self,
selector: #selector(TextViewController.handleKeyboardNotification(_:)),
name: NSNotification.Name.UIKeyboardWillHide,
name: UIResponder.keyboardWillHideNotification,
object: nil)
}
@ -44,8 +44,8 @@ class TextViewController: UIViewController {
super.viewDidDisappear(animated)
let notificationCenter = NotificationCenter.default
notificationCenter.removeObserver(self, name: NSNotification.Name.UIKeyboardWillShow, object: nil)
notificationCenter.removeObserver(self, name: NSNotification.Name.UIKeyboardWillHide, object: nil)
notificationCenter.removeObserver(self, name: UIResponder.keyboardWillShowNotification, object: nil)
notificationCenter.removeObserver(self, name: UIResponder.keyboardWillHideNotification, object: nil)
}
// MARK: - Keyboard Event Notifications
@ -56,18 +56,18 @@ class TextViewController: UIViewController {
// Get the animation duration.
var animationDuration: TimeInterval = 0
if let value = userInfo[UIKeyboardAnimationDurationUserInfoKey] as? NSNumber {
if let value = userInfo[UIResponder.keyboardAnimationDurationUserInfoKey] as? NSNumber {
animationDuration = value.doubleValue
}
// Convert the keyboard frame from screen to view coordinates.
var keyboardScreenBeginFrame = CGRect()
if let value = (userInfo[UIKeyboardFrameBeginUserInfoKey] as? NSValue) {
if let value = (userInfo[UIResponder.keyboardFrameBeginUserInfoKey] as? NSValue) {
keyboardScreenBeginFrame = value.cgRectValue
}
var keyboardScreenEndFrame = CGRect()
if let value = (userInfo[UIKeyboardFrameEndUserInfoKey] as? NSValue) {
if let value = (userInfo[UIResponder.keyboardFrameEndUserInfoKey] as? NSValue) {
keyboardScreenEndFrame = value.cgRectValue
}
@ -95,14 +95,17 @@ class TextViewController: UIViewController {
// MARK: - Configuration
func configureTextView() {
let bodyFontDescriptor = UIFontDescriptor.preferredFontDescriptor(withTextStyle: UIFontTextStyle.body)
let bodyFont = UIFont(descriptor: bodyFontDescriptor, size: 0)
func reflowTextAttributes() {
var entireTextColor = UIColor.black
textView.font = bodyFont
textView.textColor = UIColor.black
textView.backgroundColor = UIColor.white
textView.isScrollEnabled = true
// The text should be white in dark mode.
if self.view.traitCollection.userInterfaceStyle == .dark {
entireTextColor = UIColor.white
}
let entireAttributedText = NSMutableAttributedString(attributedString: textView.attributedText!)
let entireRange = NSRange(location: 0, length: entireAttributedText.length)
entireAttributedText.addAttribute(NSAttributedString.Key.foregroundColor, value: entireTextColor, range: entireRange)
textView.attributedText = entireAttributedText
/** Let's modify some of the attributes of the attributed string.
You can modify these attributes yourself to get a better feel for what they do.
@ -126,29 +129,73 @@ class TextViewController: UIViewController {
*/
let boldFontDescriptor = textView.font!.fontDescriptor.withSymbolicTraits(.traitBold)
let boldFont = UIFont(descriptor: boldFontDescriptor!, size: 0)
attributedText.addAttribute(NSAttributedStringKey.font, value: boldFont, range: boldRange)
attributedText.addAttribute(NSAttributedString.Key.font, value: boldFont, range: boldRange)
// Add highlight attribute.
attributedText.addAttribute(NSAttributedStringKey.backgroundColor, value: UIColor(named: "Tint_Green_Color")!, range: highlightedRange)
attributedText.addAttribute(NSAttributedString.Key.backgroundColor, value: UIColor.systemGreen, range: highlightedRange)
// Add underline attribute.
attributedText.addAttribute(NSAttributedStringKey.underlineStyle, value: NSUnderlineStyle.styleSingle.rawValue, range: underlinedRange)
attributedText.addAttribute(NSAttributedString.Key.underlineStyle, value: NSUnderlineStyle.single.rawValue, range: underlinedRange)
// Add tint color.
attributedText.addAttribute(NSAttributedStringKey.foregroundColor, value: UIColor(named: "Tint_Blue_Color")!, range: tintedRange)
// Add the image as an attachment.
let textAttachment = NSTextAttachment()
let image = #imageLiteral(resourceName: "text_view_attachment")
textAttachment.image = image
textAttachment.bounds = CGRect(origin: CGPoint.zero, size: image.size)
let textAttachmentString = NSAttributedString(attachment: textAttachment)
attributedText.append(textAttachmentString)
attributedText.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor.systemBlue, range: tintedRange)
textView.attributedText = attributedText
}
override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
// With the background change, we need to re-apply the text attributes.
reflowTextAttributes()
}
func symbolAttributedString(name: String) -> NSAttributedString {
let symbolAttachment = NSTextAttachment()
if let symbolImage = UIImage(systemName: name)?.withRenderingMode(.alwaysTemplate) {
symbolAttachment.image = symbolImage
}
return NSAttributedString(attachment: symbolAttachment)
}
func configureTextView() {
let bodyFontDescriptor = UIFontDescriptor.preferredFontDescriptor(withTextStyle: UIFont.TextStyle.body)
let bodyFont = UIFont(descriptor: bodyFontDescriptor, size: 0)
textView.font = bodyFont
textView.backgroundColor = UIColor(named: "text_view_background")
textView.isScrollEnabled = true
// Apply different attributes to the text (bold, tinted, underline, etc.).
reflowTextAttributes()
// Insert symbols as image attachments.
let text = textView.text! as NSString
let attributedText = NSMutableAttributedString(attributedString: textView.attributedText!)
let symbolsSearchRange = text.range(of: NSLocalizedString("symbols", comment: ""))
var insertPoint = symbolsSearchRange.location + symbolsSearchRange.length
attributedText.insert(symbolAttributedString(name: "heart"), at: insertPoint)
insertPoint += 1
attributedText.insert(symbolAttributedString(name: "heart.fill"), at: insertPoint)
insertPoint += 1
attributedText.insert(symbolAttributedString(name: "heart.slash"), at: insertPoint)
// Add the image as an attachment.
if let image = UIImage(named: "text_view_attachment") {
let textAttachment = NSTextAttachment()
textAttachment.image = image
textAttachment.bounds = CGRect(origin: CGPoint.zero, size: image.size)
let textAttachmentString = NSAttributedString(attachment: textAttachment)
attributedText.append(textAttachmentString)
textView.attributedText = attributedText
}
/** When turned on, this changes the rendering scale of the text to match the standard text scaling
and preserves the original font point sizes when the contents of the text view are copied to the pasteboard.
Apps that show a lot of text content, such as a text viewer or editor, should turn this on and use the standard text scaling.
*/
textView.usesStandardTextScaling = true
}
// MARK: - Actions
@objc

View file

@ -19,10 +19,10 @@ class TintedToolbarViewController: UIViewController {
// See the `UIBarStyle` enum for more styles, including `.Default`.
toolbar.barStyle = .black
toolbar.isTranslucent = true
toolbar.isTranslucent = false
toolbar.tintColor = UIColor(named: "Tint_Green_Color")
toolbar.backgroundColor = UIColor(named: "Tint_Blue_Color")
toolbar.tintColor = UIColor.systemGreen
toolbar.backgroundColor = UIColor.systemBlue
let toolbarButtonItems = [
refreshBarButtonItem,
@ -50,13 +50,27 @@ class TintedToolbarViewController: UIViewController {
var actionBarButtonItem: UIBarButtonItem {
return UIBarButtonItem(barButtonSystemItem: .action,
target: self,
action: #selector(TintedToolbarViewController.barButtonItemClicked(_:)))
action: #selector(TintedToolbarViewController.actionBarButtonItemClicked(_:)))
}
// MARK: - Actions
@objc
func barButtonItemClicked(_ barButtonItem: UIBarButtonItem) {
print("A bar button item on the tinted toolbar was clicked: \(barButtonItem).")
Swift.debugPrint("A bar button item on the tinted toolbar was clicked: \(barButtonItem).")
}
@objc
func actionBarButtonItemClicked(_ barButtonItem: UIBarButtonItem) {
if let image = UIImage(named: "Flowers_1") {
let activityItems = ["Shared piece of text", image] as [Any]
let activityViewController =
UIActivityViewController(activityItems: activityItems, applicationActivities: nil)
activityViewController.popoverPresentationController?.barButtonItem = barButtonItem
present(activityViewController, animated: true, completion: nil)
}
}
}

View file

@ -15,7 +15,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>14</string>
<string>15</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
@ -43,5 +43,7 @@
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>Allow UICatalog to save photos to the photo library.</string>
</dict>
</plist>

View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.app-sandbox</key>
<true/>
</dict>
</plist>