Source code form this lecture:
There are several different ways to capture iOS screenshots. Since you’ll need to do this for various upcoming final project deliverables, I thought I’d outline several techniques here.
Simulator with Window Decoration
If you want a screenshot with the simulator frame showing, then the easiest way is to utilize OS X’s built in screen capture utility. Simply press Command-Shift-4 (release) then hit the space bar. This will display a little camera icon where the cursor was and will highlight the currently selected window to capture. Once you’ve selected your window, simply click the mouse/trackpad to have OS X save it to your Desktop as a PNG (or press ESC to cancel).
Simulator without Window Decoration
If you’re on the iPhone Simulator, the easiest way to take a screenshot of just the screen is to hold down Control and select “Copy Screen” from the “Edit” menu. This can also be accessed by pressing Command-Control-C.
Then, the easiest way to create an image from the clipboard is to open the Preview app (can launch via spotlight) and select “New from Clipboard”.
Then you can simply save the image as a PNG.
Directly from iOS Device
There are 2 easy ways to get screen captures from an iOS device — through Xcode or using iOS’s built in screen capture utility. I prefer using Xcode as it takes a lossless PNG images, whereas the device seems to capture lossy JPG images.
To capture using Xcode, plug in your device and bring up the Organizer by selecting “Organizer” from the “Window” menu.
Once open, select your iOS device and then select the “Screenhots” tab. To capture a screenshot, simply press the “Capture” button and the most recent screenshot taken will be displayed in the right panel and all screenshots will appear in the left panel. Though not obvious, you can easily save any image on the left by simply dragging it out of Xcode’s Organizer into a Finder window.
To capture using the iOS’s built in screen capture utility simply hold the home button and press the sleep/wake button. You should see an on-screen flash when a capture is taken. The screenshot will then appear in an album in your Photos app, which you can then email or sync off of the device.
Due Date
Slides and current project source code must be submitted electronically by: Wednesday, November 24th — 11:59pm
Background
With just under a month left before final projects are due, you will be submitting a progress report that describes in detail the overall flow of your application as well as your progress against the final project delivery. You will be expanding your oral presentation into a progress report that documents how the project implementation is progressing.
This progress report will be used for the following:
Please note — the syllabus had originally called out the “Detailed project plan” and “Progress report” as two distinct deliverables. To save time and duplication of effort, both of these items will be condensed into this single progress report and source code submission. Since this progress report will contain the same content (albeit in one document) it will carry the combined weight of both assignments as originally detailed on the syllabus.
Slides
Your progress report should contain the following slides:
Example
Below is an example progress report for the Stocks app that’s been used as an example for previous final project deliverables.
Source Code
You must also zip up and hand in your source code thus far. Your source code is not expected to be pretty, nicely formatted, well commented or even free of memory leaks/crashes at this stage. However, your source code should be build-able and run-able.
As a reminder, be sure to remove the build directory and ensure all necessary resources to bundle up the app have been copied into the project.
Submission
Like the previous final project deliverables, your slides must be submitted as a PDF document. Your source code should be zipped up and submitted as well.
If you are working with a partner, only one of you should submit the slides & source code.
Submit using the command:
submit cs491i progressreport slides.pdf project.zip
If authoring on your own machine, you’ll need to transfer the file into your GL account (via SCP) and then SSH into GL and issue the submit command.
With an iOS 4.2 release seemingly eminent, I wanted to again remind everyone the ramifications of upgrading from a development standpoint. Generally if you want to do on-device development, then the iOS version on your device must not be newer than the iOS SDK installed. So, what does this mean?
I’ve cleanup up and posted another gesture recognizer example that didn’t make the Advanced Events notes. This example utilizes the UIRotationGestureRecognizer class to observe rotations of an image.
You can grab the source code directly below: