ITP 342 Mobile App Dev. Web View
|
|
- Tiffany Flowers
- 6 years ago
- Views:
Transcription
1 ITP 342 Mobile App Dev Web View
2 Web View 2
3 WebKit The WebKit provides a set of core classes to display web content in windows, and by default, implements features such as following links clicked by the user. The WebKit greatly simplifies the complicated process of loading webpages that is, asynchronously requesting web content from an HTTP server over the network where the response may arrive incrementally, in random order, or partially due to network errors. The WebKit also simplifies the process of displaying content that can contain various MIME types, and multiple frames each with their own set of scrollbars. 3
4 WebKit You use the WebKit to display web content in a window of your application. It s as simple as creating a view, placing it in a window, and sending a URL load request message. By default, your WebKit application behaves as you would expect without error. The WebKit conveniently creates and manages all the views needed to handle different MIME types. When the user clicks on a link in a page, the WebKit automatically creates the views needed to display the next page. 4
5 WebKit However, the WebKit doesn t implement a complete set of web browser features. You can, however, extend the WebKit by implementing custom delegate, view, and model objects. For example, you can implement a delegate to display load status, and the current URL. 5
6 WebKit The WebKit also offers web content editing. If you enable editing in your WebView, users can edit the web content it displays. You can programmatically control the current selection and control editing behavior using a WebView delegate. You can also modify the Document Object Model directly using an Objective-C API. You can also access JavaScript from Objective-C and vice versa. 6
7 Why use the WebKit? Some applications might want to display web content on demand but don t necessarily want to parse it or understand its structure to display it. Applications like this may not want to open multiple windows or provide back and forward buttons. The WebKit provides a set of classes to support a variety of web content from the most trivial embedded web content application (with web content displayed in a single window) to a fullfeatured web browser such as Safari. 7
8 Web Content The WebKit does this by hiding the details of the complex task of loading and displaying web content. The web is based on a client-server architecture, in which clients make asynchronous requests to web servers for page content. During this process any number of problems can occur not only when transmitting these requests and responses over the network but also when displaying the content once it s received by your application. Content may be complex. It can contain multiple frame elements, multiple MIME types, such as images and movies. Some MIME types require browser plug-ins to display them. 8
9 WebKit By default, the WebKit core classes transparently handle programmatic and client requests. The WebKit creates all the necessary model and view classes used to represent and display the incoming content. When a user clicks a link, the WebKit automatically relinquishes control of the old objects and creates new ones to handle the new page. The WebKit views are designed to handle multiple frames, each with their own scroll bar, and many MIME types. You do not need to implement custom views for your application to display web content in your application. 9
10 Core WebKit Classes You can display web content in a single window by following a few simple steps. Normally, to embed web content in your application you simply create a WebView object, place it in a window, and send a load request message. However, if you want to do something more complex for example, customize the user interface, use multiple windows, or implement any other browser-like features, such as back and forward buttons you will want to understand better how the WebKit classes work together to load and display web content. 10
11 Frame Model and View Classes The WebKit loosely follows a model-viewcontroller paradigm some objects represent view-controllers that display web content, and other objects represent models that encapsulate web content. WebView Class Reference is the core view class in the WebKit. WebView objects manage interactions between WebFrameView Class Reference objects and WebFrame Class Reference objects. 11
12 Web View You use the UIWebView class to embed web content in your application. To do so, you simply create a UIWebView object, attach it to a window, and send it a request to load web content. You can also use this class to move back and forward in the history of webpages, and you can even set some web content properties programmatically. 12
13 Loading Local Content When loading local content, you can either create the content dynamically or load it from a file and display it using one of the following methods: loaddata: MIMEType: textencodingname: baseurl: loadhtmlstring: baseurl: - (void)viewdidload { [super viewdidload]; NSString *path = [[NSBundle mainbundle] pathforresource:@"hig" oftype:@"pdf"]; if (path){ NSData *pdfdata = [NSData datawithcontentsoffile:path]; [(UIWebView *)self.view loaddata:pdfdata MIMEType:@"application/pdf" textencodingname:@"utf-8" baseurl:nil]; } } 13
14 Loading Local Content When loading local content, you can either create the content dynamically or load it from a file and display it using one of the following methods: loaddata: MIMEType: textencodingname: baseurl: loadhtmlstring: baseurl: SWIFT // QuotesViewController.swift override func viewdidload() { super.viewdidload() if let path = Bundle.main.path(forResource: "HIG", oftype: "pdf"){ let pdfdata = NSData(contentsOfFile: path, options:.mappedifsafe) (self.view as? UIWebView)?.load(pdfData, mimetype: "application/pdf", textencodingname: "utf-8", baseurl: nil) } } 14
15 Loading Content from the Network To load content from the network, you create an NSURLRequest object and pass it to the loadrequest: method of your web view. You can do this in the viewdidload or viewdidappear method. NSURL *url = [NSURL URLWithString:@" NSURLRequest *request = [NSURLRequest requestwithurl:url]; [self.mywebview loadrequest: request]; 15
16 Loading Content from the Network To load content from the network, you create an NSURLRequest object and pass it to the loadrequest: method of your web view. You can do this in the viewdidload or viewdidappear method. SWIFT let url = URL(string: " let request = URLRequest(url: url) self.mywebview.loadrequest(request) 16
17 App Transport Security App Transport Security (ATS) was introduced and enabled by default since ios 9. It forces an app to connect to web services over an HTTPS connection rather than HTTP, keeping user data secure in transit. To handle this, you can: Update all urls to be https Whitelist http connections with key NSExceptionDomains Ignore all app transport security restrictions with key NSAllowsArbitraryLoads 17
18 Stop a Load Request If, after initiating a network-based load request, you must release your web view for any reason, you must cancel the pending request before releasing the web view. You can cancel a load request using the web view s stoploading method. A typical place to include this code would be in the viewwilldisappear: method of the owning view controller. To determine if a request is still pending, you can check the value in the web view s loading property. - (void)viewwilldisappear:(bool)animated{ [super viewwilldisappear:animated]; if ([self.mywebview isloading]){ [self.mywebview stoploading]; } } // Disconnect the delegate as the webview is hidden self.mywebview.delegate = nil; 18
19 Stop a Load Request If, after initiating a network-based load request, you must release your web view for any reason, you must cancel the pending request before releasing the web view. You can cancel a load request using the web view s stoploading method. A typical place to include this code would be in the viewwilldisappear: method of the owning view controller. To determine if a request is still pending, you can check the value in the web view s loading property. SWIFT override func viewwilldisappear(_ animated: Bool) { super.viewwilldisappear(animated) if self.mywebview.isloading{ self.mywebview.stoploading() } } // Disconnect the delegate as the webview is hidden self.mywebview.delegate = nil 19
20 UIWebView Use the loadrequest: method to begin loading web content, the stoploading method to stop loading, and the loading property to find out if a web view is in the process of loading. If you allow the user to move back and forward through the webpage history, then you can use the goback and goforward methods as actions for buttons. Use the cangoback and cangoforward properties to disable the buttons when the user can t move in a direction. 20
21 UIWebView By default, a web view automatically converts telephone numbers that appear in web content to Phone links. When a Phone link is tapped, the Phone application launches and dials the number. Set the detectsphonenumbers property to NO to turn off this default behavior. You can also use the scalespagetofit property to programmatically set the scale of web content the first time it is displayed in a web view. Thereafter, the user can change the scale using gestures. 21
22 UIWebView You should not embed UIWebView or UITableView objects in UIScrollView objects. If you do so, unexpected behavior can result because touch events for the two objects can be mixed up and wrongly handled. entation/uikit/reference/uiwebview_class/r eference/reference.html 22
23 Homework Assignment Create a Detail View Create a class that inherits from UIViewController entitled something like DetailViewController. Create a public property to hold an NSDictionary object for a place. Update the title of the navigationitem to the place name. Drag ViewController to the storyboard. Set the class identity to the new class. Add a WebView to display the web page of the URL. Create an IBOutlet for the WebView. 23
24 Storyboard Create a Show (e.g. Push) segue from the CollectionViewCell to the DetailViewController. 24
25 Detail View Controller Call the loadrequest: method for the WebView. Add an ActivityIndicatorView that animates when the website is loading by adhering to the UIWebViewDelegate protocol. This is described in future slides in this deck. 25
26 Collection View Controller Implement the prepareforsegue:sender: method. Check to make sure the segue.identifier is equal to the string that you entered for the identifier in the storyboard. Get the index of the selected cell by calling the indexpathsforselecteditems method for the instance of the CollectionView (self.collectionview). Create an instance of the DetailViewController and set its place property to the selected place. 26
27 UIWebViewDelegate Set the delegate property to an object conforming to the UIWebViewDelegate protocol if you want to track the loading of web content. While the web content is loading, let's give feedback to the user. Use an Activity View Indicator. 27
28 Activity Indicator View On the Storyboard, add an Activity Indicator View to the Detail View Create an IBOutlet for the activity indicator In the Attributes Inspector, make sure Hides When Stopped is checked entation/uikit/reference/uiactivityindicatorvie w_class/reference/uiactivityindicatorview.h tml 28
29 Activity Indicator View In the code that has the IBOutlet to the activity indicator Use the startanimating method to start animating the activity indicator Use the stopanimating method to stop animating But when do we start & stop animating? Use the UIWebViewDelegate methods 29
30 UIWebViewDelegate In the storyboard, select the Web View In the Connections Inspector, set the delegate to the Detail View Controller Make the DetailViewController class adhere to the UIWebViewDelegate protocol Use the following delegate methods: webviewdidstartload: webviewdidfinishload: webview: didfailloadwitherror: 30
31 Detail View Implement the webviewdidstartload: method and have it start animating the activity indicator Implement the webviewdidfinishload: method and have it stop animating the activity indicator Implement the webview: didfailloadwitherror: method and have it stop animating the activity indicator 31
32 Detail View Implement the webviewdidstartload: method and have it start animating the activity indicator Implement the webviewdidfinishload: method and have it stop animating the activity indicator Implement the webview: didfailloadwitherror: method and have it stop animating the activity indicator - (void)webviewdidstartload:(uiwebview *)webview{ [self.activityindicator startanimating]; } - (void)webviewdidfinishload:(uiwebview *)webview{ [self.activityindicator stopanimating]; } - (void)webview:(uiwebview *)webview didfailloadwitherror:(nserror *)error{ [self.activityindicator stopanimating]; } 32
33 Detail View Implement the webviewdidstartload: method and have it start animating the activity indicator Implement the webviewdidfinishload: method and have it stop animating the activity indicator Implement the webview: didfailloadwitherror: method and have it stop animating the activity indicator SWIFT func webviewdidstartload(_ webview: UIWebView) { self.activityindicator.startanimating() } func webviewdidfinishload(_ webview: UIWebView) { self.activityindicator.stopanimating() } func webview(_ webview: UIWebView, didfailloadwitherror error: Error) { self.activityindicator.stopanimating() } 33
34 Resources tation/uikit/reference/uiwebview_class/index. html tation/stringstextfonts/conceptual/textandweb iphoneos/displaywebcontent/displaywebcont ent.html ntation/cocoa/conceptual/displaywebcontent/ DisplayWebContent.html#//apple_ref/doc/uid/ i 34
Developing Applications for ios
Developing Applications for ios Lecture 7: View Controller Lifecycle and UIKit Radu Ionescu raducu.ionescu@gmail.com Faculty of Mathematics and Computer Science University of Bucharest Content View Controller
More informationView Controller Lifecycle
View Controller Lifecycle View Controllers have a Lifecycle A sequence of messages is sent to them as they progress through it Why does this matter? You very commonly override these methods to do certain
More informationIntroducing the Modern WebKit API
Frameworks #WWDC14 Introducing the Modern WebKit API Session 206 Anders Carlsson Safari and WebKit Engineer 2014 Apple Inc. All rights reserved. Redistribution or public display not permitted without written
More informationITP 342 Mobile App Dev. Collection View
ITP 342 Mobile App Dev Collection View Collection View A collection view manages an ordered collection of items and presents them in a customizable layout. A collection view: Can contain optional views
More informationMobile Development - Lab 2
Mobile Development - Lab 2 Objectives Illustrate the delegation mechanism through examples Use a simple Web service Show how to simply make a hybrid app Display data with a grid layout Delegation pattern
More informationTables. Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder
Tables Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder Mobile Application Development in ios 1 Outline Table View Controller Table View Table Cells
More informationLinkify Documentation
Linkify Documentation Release 1.0.0 Studio Ousia November 01, 2014 Contents 1 Developer Support 3 1.1 Customize Linkify Application..................................... 3 1.2 Embed to ios App............................................
More informationITP 342 Mobile App Dev. Table Views
ITP 342 Mobile App Dev Table Views Table Views The most common mechanism used to display lists of data to the user Highly configurable objects that can be made to look practically any way you want them
More informationApp. Chapter 19 App. App (ViewController) App. Single View Application Single View Application View. (View Controller)
Chapter 19 App App (ViewController) App 19.1 App App Single View Application Single View Application View Controller View Controller Label Button Button (View Controller) 2 View Controller Utility Area
More informationIntroductory ios Development
Introductory ios Development 152-164 Unit 5 - Multi-View Apps Quick Links & Text References What is a Delegate? What is a Protocol? Delegates, Protocols and TableViews Creating a Master-Detail App Modifying
More informationBuilding the App - Part 5 - Adding a Link
Unit 4 - Coding For Your App Copy and Paste the code below exactly where the tutorials tell you. DO NOT COPY TEXT IN RED. Building the App - Part 5 - Adding a Link XCODE 7 @IBAction func Button1(_ sender:
More informationStanford CS193p. Developing Applications for ios. Fall Stanford CS193p. Fall 2011
Developing Applications for ios Today UI Element of the Week UIToolbar ipad Split View Popover Universal (iphone + ipad) Application Demo Friday Section AVFoundation framework - Capturing and manipulating
More informationUsing Advanced Interface Objects and Views
HOUR 9 Using Advanced Interface Objects and Views What You ll Learn This Hour:. How to use segmented controls (a.k.a. button bars). Ways of inputting Boolean values via switches. How to include web content
More informationDiscovering WKWebView
Discovering WKWebView Designed to replace UIWebView on ios and WebView on macos. Both ios and macos have the same API Harder to use than UIWebView Multi-process Architecture Multi-process Architecture
More informationDocument Version Date: 1st March, 2015
7 Minute Fitness: ios(swift) Application Document Version 1.0.1 Date: 1st March, 2015 2 [7 MINUTE FITNESS: APP DOCUMENTATION] Important Notes:... 5 AppDelegate Class Reference... 6 Tasks... 6 Instance
More informationITP 342 Mobile App Dev. Connections
ITP 342 Mobile App Dev Connections User Interface Interactions First project displayed information to the user, but there was no interaction. We want the users of our app to touch UI components such as
More informationStanford CS193p. Developing Applications for ios. Fall CS193p. Fall
Stanford Developing Applications for ios Today More about Documents Demo Use Codable to create a JSON representation of our document Store it in the filesystem Think better of that and let UIDocument store
More informationStanford CS193p. Developing Applications for ios. Fall CS193p. Fall
Stanford Developing Applications for ios Today Drag and Drop Transferring information around within and between apps. EmojiArt Demo Drag and drop an image to get our EmojiArt masterpieces started. UITableView
More informationITP 342 Mobile App Dev. Table Views
ITP 342 Mobile App Dev Table Views Tables A table presents data as a scrolling, singlecolumn list of rows that can be divided into sections or groups. Use a table to display large or small amounts of information
More informationLearn to make desktop LE
HACKING WITH SWIFT COMPLETE TUTORIAL COURSE Learn to make desktop LE P apps with real-worldam S Swift projects REEPaul Hudson F Project 1 Storm Viewer Get started coding in Swift by making an image viewer
More informationAVAudioRecorder & System Sound Services
AVAudioRecorder & System Sound Services Dept. of Multimedia Science, Sookmyung Women s University. prof. JongWoo Lee Index AVAudioRecorder? - (AudioRecorder) System Sound Service? - (SysSound) AVAudioRecorder
More informationITP 342 Mobile App Dev. Connections
ITP 342 Mobile App Dev Connections User Interface Interactions First project displayed information to the user, but there was no interaction. We want the users of our app to touch UI components such as
More information1 Build Your First App. The way to get started is to quit talking and begin doing. Walt Disney
1 Build Your First App The way to get started is to quit talking and begin doing. Walt Disney Copyright 2015 AppCoda Limited All rights reserved. Please do not distribute or share without permission. No
More informationCreate an App that will drop PushPins onto a map based on addresses that the user inputs.
Overview Create an App that will drop PushPins onto a map based on addresses that the user inputs. Part 1: Introduction to MKMapKit Part 2: Introduction to PushPins Part 3: Use Google s API to lookup an
More informationEnhancing your apps for the next dimension of touch
App Frameworks #WWDC16 A Peek at 3D Touch Enhancing your apps for the next dimension of touch Session 228 Tyler Fox UIKit Frameworks Engineer Peter Hajas UIKit Frameworks Engineer 2016 Apple Inc. All rights
More informationMastering UIKit on tvos
App Frameworks #WWDC16 Mastering UIKit on tvos Session 210 Justin Voss UIKit Engineer 2016 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission from
More informationCollection Views. Dr. Sarah Abraham
Collection Views Dr. Sarah Abraham University of Texas at Austin CS329e Fall 2016 What is a Collection View? Presents an ordered set of data items in a flexible layout Subclass of UIScrollView (like UITableView)
More informationAssignment IV: Smashtag Mentions
Assignment IV: Smashtag Mentions Objective In this assignment, you will enhance the Smashtag application that we built in class to give ready-access to hashtags, urls, images and users mentioned in a tweet.
More informationITP 342 Mobile App Dev. Animation
ITP 342 Mobile App Dev Animation Views Views are the fundamental building blocks of your app's user interface, and the UIView class defines the behaviors that are common to all views. Responsibilities
More informationBuilding Mapping Apps for ios With Swift
Building Mapping Apps for ios With Swift Jeff Linwood This book is for sale at http://leanpub.com/buildingmappingappsforioswithswift This version was published on 2017-09-09 This is a Leanpub book. Leanpub
More informationGestures. Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder
Gestures Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder Mobile Application Development in ios 1 Outline Gestures Gesture recognizers Gesture states
More informationStructuring an App Copyright 2013 Apple Inc. All Rights Reserved.
Structuring an App App Development Process (page 30) Designing a User Interface (page 36) Defining the Interaction (page 42) Tutorial: Storyboards (page 47) 29 App Development Process Although the task
More informationA Mad Libs app that you will navigate through 3 UIViewControllers to add text that will be shown in a story on the fourth UIViewController.
WordPlay App: A Mad Libs app that you will navigate through 3 UIViewControllers to add text that will be shown in a story on the fourth UIViewController. Create a new project Create a new Xcode project
More informationios Mobile Development
ios Mobile Development Today UITableView! Data source-driven vertical list of views.! ipad! Device-specific UI idioms.! Demo! Shutterbug UITableView Very important class for displaying data in a table!
More informationios 9 SDK Development
Extracted from: ios 9 SDK Development Creating iphone and ipad Apps with Swift This PDF file contains pages extracted from ios 9 SDK Development, published by the Pragmatic Bookshelf. For more information
More informationSocial Pinboard: ios(swift) Application
Social Pinboard: ios(swift) Application Document Version 1.0.1 Date: 15 th May, 2015 2 [SOCIAL PINBOARD: APP DOCUMENTATION] Important Notes:... 5 AppDelegate Class Reference... 6 Tasks... 6 Instance Methods...
More informationAdvanced ios. CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 20 11/01/2012
Advanced ios CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 20 11/01/2012 1 Goals of the Lecture Present a few additional topics and concepts related to ios programming persistence serialization
More informationiphone Programming Touch, Sound, and More! Norman McEntire Founder Servin Flashlight CodeTour TouchCount CodeTour
iphone Programming Touch, Sound, and More! Norman McEntire Founder Servin 1 Legal Info iphone is a trademark of Apple Inc. Servin is a trademark of Servin Corporation 2 Welcome Welcome! Thank you! My promise
More informationITP 342 Mobile App Dev. Animation
ITP 342 Mobile App Dev Animation Core Animation Introduced in Mac OS X Leopard Uses animatable "layers" built on OpenGL UIKit supports Core Animation out of the box Every UIView has a CALayer behind it
More informationCOMPLETE TUTORIAL COURSE. Learn to make tvos LE. apps with real-worldam S F
HACKING WITH SWIFT COMPLETE TUTORIAL COURSE Learn to make tvos LE P apps with real-worldam S Swift projects REEPaul Hudson F Project 1 Randomly Beautiful 2 www.hackingwithswift.com Setting up In this first
More informationMVC & Onwards. CS 442: Mobile App Development Michael Saelee
MVC & Onwards CS 442: Mobile App Development Michael Saelee Agenda - Recap: view-controller communication - Delegation as a general pattern - Observer pattern - Controller responsibilities & MVC - Multiple
More informationLecture 8 Demo Code: Cassini Multithreading
Lecture 8 Demo Code: Cassini Multithreading Objective Included below is the source code for the demo in lecture. It is provided under the same Creative Commons licensing as the rest of CS193p s course
More informationNews- ipad: ios(swift) Application
News- ipad: ios(swift) Application Document Version 1.0.1 Date: 9 th Nov, 2014 2 [NEWS- IPAD: APP DOCUMENTATION] Important Notes:... 6 AppDelegate Class Reference... 7 Tasks... 7 Instance Methods... 7
More informationMedia Playback and Recording. CS193W - Spring Lecture 3
Media Playback and Recording CS193W - Spring 2016 - Lecture 3 Today Images and animated images Text input controller Media playback controller Inline video playback Playing extended audio Recording audio
More informationITP 342 Mobile App Dev. Audio
ITP 342 Mobile App Dev Audio File Formats and Data Formats 2 pieces to every audio file: file format (or audio container) data format (or audio encoding) File formats describe the format of the file itself
More informationStream iphone Sensor Data to Adafruit IO
Stream iphone Sensor Data to Adafruit IO Created by Trevor Beaton Last updated on 2019-01-22 04:07:41 PM UTC Guide Contents Guide Contents Overview In this learn guide we will: Before we start... Downloading
More informationIndex. btndrop function, 224, 226 btngetquote function, 246 btnpressed function, 28 btnquote method, 245. CallWeb method, 238, 240
Index A App icons section icons set, 277 LaunchImage, 278 launch screen graphics, 278 279 PNG format, 277 settings, 276 App store deployment application graphics, 273 general settings Identity section,
More informationChapter 22 TableView TableView. TableView ios. ViewController. Cell TableViewCell TableView
Chapter 22 TableView TableView Android TableView ListView App 22.1 TableView TableView Storyboard Table View ViewController TableView ios Cell TableViewCell TableView Table View Cell Cell ImageView (imageview)
More informationUse the API or contact customer service to provide us with the following: General ios Android App Name (friendly one-word name)
Oplytic Attribution V 1.2.0 December 2017 Oplytic provides attribution for app-to-app and mobile-web-to-app mobile marketing. Oplytic leverages the tracking provided by Universal Links (ios) and App Links
More informationAnnouncements. Today s Topics
Announcements Lab 2 is due tonight by 11:59 PM Late policy is 10% of lab total per day late So -7.5 points per day late for lab 2 Labs 3 and 4 are posted on the course website Extensible Networking Platform
More informationITP 342 Advanced Mobile App Dev. Core Data
ITP 342 Advanced Mobile App Dev Core Data Persistent Data NSUser Defaults Typically used to save app preferences Property List (plist) in Documents Directory Data is in a dictionary or an array Coders
More informationUI Design and Storyboarding
UI Design and Storyboarding Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder Mobile Application Development in ios 1 Outline Model-View-Controller
More informationImplementing UI Designs in Interface Builder
Developer Tools #WWDC15 Implementing UI Designs in Interface Builder Session 407 Kevin Cathey Interface Builder Engineer Tony Ricciardi Interface Builder Engineer 2015 Apple Inc. All rights reserved. Redistribution
More informationios Developer s Guide Version 1.0
HealthyFROGS ios Developer s Guide ios Developer s Guide Version 1.0 Tuesday May 7, 2013 2012-2013 Computer Science Department, Texas Christian University - All Rights Reserved HealthyFROGS ios Developer
More informationRx in the real world. 1 Rob Ciolli
Rx in the real world 1 Rob Ciolli 2 Rob Ciolli 3 Rob Ciolli The App 4 Rob Ciolli Quick architecture overview 5 Rob Ciolli MV - WTF 6 Rob Ciolli Model Simple, immutable data struct returned from DB or APIs
More informationQuickPrints SDK for ios Version 3.3 August 06, 2014
Introduction The QuickPrints SDK for ios (ipod Touch, iphone, and ipad) is a static library that provides a set of APIs that can be used to submit a photo print order to a Walgreens store. This document
More informationWeb 2.0 and iphone Application Development Workshop. Lab 2: iphone programming basics
Web 2.0 and iphone Application Development Workshop This lab is prepared by: Department of Electrical and Electronic Engineering, Faculty of Engineering, The University of Hong Kong Lab 2: iphone programming
More informationADVANCED M A. Learn SiriKit, imessage apps, rich notifications, and more. with real-world projects HACKING WITH SWIFT COMPLETE TUTORIAL COURSE
HACKING WITH SWIFT ADVANCED ios VOLUME ONE COMPLETE TUTORIAL COURSE Learn SiriKit, imessage apps, E L P rich notifications, and more M A S with real-world projects E E FR Paul Hudson Chapter 1 Happy Days
More informationEvent Delivery: The Responder Chain
When you design your app, it s likely that you want to respond to events dynamically. For example, a touch can occur in many different objects onscreen, and you have to decide which object you want to
More informationiphone Application Tutorial
iphone Application Tutorial 2008-06-09 Apple Inc. 2008 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any
More informationMobile Application Development
Mobile Application Development Lecture 16 Controllers of View Controllers 2013/2014 Parma Università degli Studi di Parma Lecture Summary Multiple MVCs UINavigationController Segues UITabBarController
More informationCOURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3
COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3 MODULE 1: OVERVIEW OF HTML AND CSS This module provides an overview of HTML and CSS, and describes how to use Visual Studio 2012
More informationInterfaceBuilder and user interfaces
ES3 Lab 2 InterfaceBuilder and user interfaces This lab InterfaceBuilder Creating components Linking them to your code Adding buttons, labels, sliders UITableView Creating a tableview Customizing cells
More informationios Application Development Lecture 5: Protocols, Extensions,TabBar an Scroll Views
ios Application Development Lecture 5: Protocols, Extensions,TabBar an Scroll Views Dr. Simon Völker & Philipp Wacker Media Computing Group RWTH Aachen University Winter Semester 2017/2018 http://hci.rwth-aachen.de/ios
More informationCocoa Touch Best Practices
App Frameworks #WWDC15 Cocoa Touch Best Practices Session 231 Luke Hiesterman UIKit Engineer 2015 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission
More informationStanford CS193p. Developing Applications for ios. Winter CS193p. Winter 2017
Stanford Developing Applications for ios Today Error Handling in Swift try Extensions A simple, powerful, but easily overused code management syntax Protocols Last (but certainly not least important) typing
More informationMy First iphone App (for Xcode version 6.4)
My First iphone App (for Xcode version 6.4) 1. Tutorial Overview In this tutorial, you re going to create a very simple application on the iphone or ipod Touch. It has a text field, a label, and a button
More informationios DeCal : Lecture 2 Structure of ios Applications: MVC and Auto Layout
ios DeCal : Lecture 2 Structure of ios Applications: MVC and Auto Layout Overview : Today s Lecture Model View Controller Design Pattern Creating Views in Storyboard Connecting your Views to Code Auto
More informationIntegrating Game Center into a BuzzTouch 1.5 app
into a BuzzTouch 1.5 app This tutorial assumes you have created your app and downloaded the source code; created an App ID in the ios Provisioning Portal, and registered your app in itunes Connect. Step
More informationPraktikum Entwicklung von Mediensystemen mit
Praktikum Entwicklung von Mediensystemen mit Sommersemester 2013 Fabius Steinberger, Dr. Alexander De Luca Today Organization Introduction to ios programming Hello World Assignment 1 2 Organization 6 ECTS
More informationTHE TASKBAR: A TOOL FOR UNLOCKING THE SECRETS OF WINDOWS 10
THE TASKBAR: A TOOL FOR UNLOCKING THE SECRETS OF WINDOWS 10 A Two Hour Seminar and Demonstration Thursday, September 13, 9:30-11:30 am, in the Computer Club Classroom Open Seating Presented by Bill Wilkinson
More informationSecure+ Password Manager ver 1.1.1
Secure+ Password Manager ver 1.1.1 Table of Contents 1. First setup & Auto lock functionality 1. Setup 2. Auto Lock 2. Add new item & edit 1. Icons 2. Edit Fields (Title, Category, ID, Password, URL) 3.
More informationMobile Application Development
Mobile Application Development Lecture 17 Blocks, Concurrency, Networking 2013/2014 Parma Università degli Studi di Parma Lecture Summary Blocks Concurrency and multithreading Grand Central Dispatch (GCD)
More informationNATIVE APP INTERCEPTS on ios & ANDROID
ethnio tm NATIVE APP INTERCEPTS on ios & ANDROID VERSION NO. 2 CREATED JAN 17, 2018 ETHNIO, INC. 6121 W SUNSET BLVD LOS ANGELES, CA 90028 TEL (888) 879-7439 OVERVIEW There are two basic methods for implementing
More informationWhat s New in NSCollectionView Session 225
App Frameworks #WWDC15 What s New in NSCollectionView Session 225 Troy Stephens Application Frameworks Engineer 2015 Apple Inc. All rights reserved. Redistribution or public display not permitted without
More informationITP 342 Mobile App Dev. Interface Builder in Xcode
ITP 342 Mobile App Dev Interface Builder in Xcode New Project From the Main Menu, select the File à New à Project option For the template, make sure Application is selected under ios on the left-hand side
More informationIntroduction to WatchKit. CS193W - Spring Lecture 1
Introduction to WatchKit CS193W - Spring 2016 - Lecture 1 appleᴡᴀᴛᴄʜ Released April 24, 2015 No updates to the hardware yet. Three collections, over 30 models Two sizes The Screen OLED (organic light-emitting
More informationStep 1: Open Xcode and select Create a new Xcode Project from the Welcome to Xcode menu.
In this tutorial we are going to build a simple calculator using buttons that are all linked together using the same method. We will also add our own method to the source code to create some additional
More informationios Development Lecture 3 Controllers of View Controllers Ing. Simone Cirani
ios Development Lecture 3 Controllers of View Controllers Ing. Simone Cirani email: simone.cirani@unipr.it http://www.tlc.unipr.it/cirani Corso IFTS Cisita ios Development 2014 Parma Università degli Studi
More informationimessage Apps and Stickers, Part 2
App Frameworks #WWDC16 imessage Apps and Stickers, Part 2 Interactive Messages Session 224 Alex Carter Messages Engineer Stephen Lottermoser Messages Engineer 2016 Apple Inc. All rights reserved. Redistribution
More informationios Mobile Development
ios Mobile Development Today UITextView Scrollable, editable/selectable view of a mutable attributed string. View Controller Lifecycle Finding out what s happening as a VC is created, hooked up to the
More informationiphone Application Programming Lab 2: MVC and Delegation + A01 discussion
Lab 2: MVC and Delegation + A01 discussion Nur Al-huda Hamdan RWTH Aachen University Winter Semester 2015/2016 http://hci.rwth-aachen.de/iphone Learning Objectives Discuss A01 + demo Concepts: debugging
More informationWhat s New in imessage Apps
Session App Frameworks #WWDC17 What s New in imessage Apps 234 Eugene Bistolas, Messages Engineer Jay Chae, Messages Engineer Stephen Lottermoser, Messages Engineer 2017 Apple Inc. All rights reserved.
More informationNavigation and Segues
Navigation and Segues Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder Mobile Application Development in ios 1 Outline Multiple views Segues Navigation
More informationios Development - Xcode IDE
ios Development - Xcode IDE To develop ios applications, you need to have an Apple device like MacBook Pro, Mac Mini, or any Apple device with OS X operating system, and the following Xcode It can be downloaded
More information} override func didreceivememorywarning() { 26 super.didreceivememorywarning() 27 } 28 } Pause Stop
Chapter 30 30.1 App App MP3 Don t Download This Song [1] Finder MP3 Xcode UI 1 import UIKit 2 import AVFoundation 3 4 class ViewController: UIViewController { 5 6 var player: AVAudioPlayer? 7 8 override
More informationios 101 Hands-On Challenges
ios 101 Hands-On Challenges Copyright 2014 Razeware LLC. All rights reserved. No part of this book or corresponding materials (such as text, images, or source code) may be reproduced or distributed by
More informationSalesforce Classic User Guide for Android
Salesforce Classic User Guide for Android Version 36.0, Spring 16 @salesforcedocs Last updated: April 27, 2016 Copyright 2000 2016 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark
More informationMobile Development Lab 3
Mobile Development Lab 3 Objectives Illustrate closures through examples Have fun with maps, location and geolocation Have fun with animations Closures implemented in Swift Closures are self-contained
More informationSafeWebApp Android QuickStart
SafeWebApp Android QuickStart Excel Software Copyright 2012 Excel Software SafeWebApp is an easy, secure way to deliver and use web applications, called Web Apps. SafeWebApp is free download available
More informationMiscellaneous Topics
Miscellaneous Topics Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder Mobile Application Development in ios 1 Outline Renaming Xcode project and
More informationLesson 1: Hello ios! 1
Contents Introduction xxv Lesson 1: Hello ios! 1 ios Developer Essentials 1 A Suitable Mac 1 A Device for Testing 2 Device Differences 2 An ios Developer Account 4 The Official ios SDK 6 The Typical App
More informationITP 342 Mobile App Dev. Delegates
ITP 342 Mobile App Dev Delegates Protocol A protocol is a declaration of a list of methods Classes that conform to the protocol implement those methods A protocol can declare two kinds of methods: required
More informationStanford CS193p. Developing Applications for ios. Winter CS193p! Winter 2015
Stanford CS193p Developing Applications for ios Today UITextField Bonus Topic! Table View A UIView for displaying long lists or tables of data UITextField Like UILabel, but editable Typing things in on
More informationIOS - TEXT FIELD. Use of Text Field. Important Properties of Text Field. Updating Properties in xib
IOS - TEXT FIELD http://www.tutorialspoint.com/ios/ios_ui_elements_text_field.htm Copyright tutorialspoint.com Use of Text Field A text field is a UI element that enables the app to get user input. A UITextfield
More informationITP 342 Mobile App Dev. Animation
ITP 342 Mobile App Dev Animation Core Animation Introduced in Mac OS X Leopard Uses animatable "layers" built on OpenGL UIKit supports Core Animation out of the box Every UIView has a CALayer behind it
More informationWHAT DEVOPS NEED TO KNOW ABOUT MOBILE
WHAT DEVOPS NEED TO KNOW ABOUT MOBILE or really everyone Jon Arne Sæterås twitter: @jonarnes Desktop Mobile Tablet Console 100 80 60 40 20 0 2009-01 2010-01 2011-01 2012-01 2013-01 2014-01 2015-01 2016-01
More informationPart of this connection identifies how the response can / should be provided to the client code via the use of a callback routine.
What is AJAX? In one sense, AJAX is simply an acronym for Asynchronous JavaScript And XML In another, it is a protocol for sending requests from a client (web page) to a server, and how the information
More informationProduced by. Design Patterns. MSc in Computer Science. Eamonn de Leastar
Design Patterns MSc in Computer Science Produced by Eamonn de Leastar (edeleastar@wit.ie) Department of Computing, Maths & Physics Waterford Institute of Technology http://www.wit.ie http://elearning.wit.ie
More informationHere is an example of a spending report-type Dashboard. This would be a great tool for a Sales Manager.
iphone Dashboard handbook Introduction Welcome to the iphone Dashboard Handbook, your one-stop source for learning about and creating 4D iphone Dashboards. iphone Dashboards are data-at-a-glance summaries
More information